섹션1
- docker build .
- 현재경로에서 dockerfile 찾아서 build → image 생성
- docker run -p 3000:3000 4719fad9c1ed
- 이미지id를 뒤에 써서 컨테이너 생성 및 실행
- docker ps
- docker stop stoic_easley
- docker stop container_name
섹션2
- docker run [imagename]
- -it : 컨테이너 내부에서 호스팅 머신으로 대화형 세션을 노출해줘라
- COPY src dest
- src : 이미지로 복사할 파일들이 있는 경로
- WORKDIR
- RUN 명령어가 실행될 곳
- ./ → working dir
- RUN
- 이미지가 빌드될때
- CMD
- 컨테이너가 실행될때
- EXPOSE
- cmd 이전에 항상 호스트에게 이 포트를 열겠다.
- docker build [도커파일있는경로]
- docker run [imagename] {imagename은다쓸필요없이구분되는정도만써도된다.}
- -p : 도커내부와 통신할 호스트 포트
- 3000:80(expose)
- -p : 도커내부와 통신할 호스트 포트
- 이미지를 빌드할때마다 모든 명령결과를 캐시하고 다시 빌드할때 변경점이 없다면 캐시된 결과를 가져온다.
- 레이어 기반 아키텍처
- 모든 명령은 도커파일의 레이어를 나타낸다.
- instruction 한 줄 한 줄은 도커파일의 레이어이다.
- 그리고 이 이미지는 read only 이다.
- 최종명령인 CMD 이전은 모두 이미지이다.
- 이 위에 CMD를 얹는다.
- 변경이 되지 않는다면 이러한 모든 레이어를 캐시에서 사용할 수 있다.
- 코드를 변경하면 캐시의 일부만 사용하기 때문에 이전보단 시간이 걸린다.
- 하나의 레이어가 변경되면 그 레이어 이후의 모든 레이어들은 다시 빌드된다.
- 도커는 다시 실행해야하는 항복만 다시 빌드하여 이미지 생성 속도를 높인다.
- 따라서 instruction의 순서가 중요하다. 필요없는 재 실행이 되지 않도록
- -d : detached 컨테이너를 실행한 직후 터미널을 사용 가능
- —name 컨테이너 이름
- —rm 컨테이너를 중지할 때 마다 자동으로 제거
'Udemy-Docker-Kubernetes-2022' 카테고리의 다른 글
Udemy/Docker-Kubernetes-2022/네트워크,컨테이너간통신 (0) | 2023.01.19 |
---|---|
Udemy/Docker-Kubernetes-2022/볼륨 & ARG & ENV (0) | 2023.01.05 |