본문 바로가기
협업툴,가상환경 정리/docker_정리

6_Dockerfile 코드 읽기~ 씡씡씡

by 알 수 없는 사용자 2022. 6. 2.

 

 

 

 

 

KEYWORD :

FROM

RUN

ENV

COPY

WORKDIR

ENTRYPOINT

CMD

 


FROM

- 도커 컨테이너 구울때 어떤 OS 쓸껀지 정함.

- docker image ls 에서 이미지가 있어야 함

 

RUN

- 이미지를 빌드할 때 실행되는 명령어

 

ENV

- ex1) ENV PATH /home/complusblog/workspace/helloworld/bin:$PATH
- ex2) ENV LD_LIBRARY_PATH /home/complusblog/workspace/helloworld/lib:$LD_LIBRARY_PATH

- ex3) ENV NAME "liam"   <- 도커 컨테이너에서 "echo $NAME" 치면 "liam" 이라고 뜸

- ex4) ENV ROS_DISTRO foxy 

export 같은거 환경변수 설정 커맨드이다. ENV <환경변수 이름> <환경변수 값>

ex1 설명 : PATH

 

COPY

- COPY "현재리눅스에서 copy할 파일" "도커 컨테이너에 paste 할 위치"

- ex) COPY /home/liam/test.py /tmp/liamfiles/

 

WORKDIR

- CLI로 'cd' 명령어

 

ENTRYPOINT

- 컨테이너를 생성하고 최초로 실행 할 때 한번만 수행됨.

 

CMD

- 컨테이너를 생성하고 최초로 실행 할 때 한번만 수행됨.

 

ENTRYPOINT  VS  CMD

차이점에 대해서 설명부터 드려보면 ENTRYPOINT는 항상 실행이 되고, CMD는 docker run 명령어를 실행할 때, 변경이 가능합니다.

따라서 >> ENTRYPOINT는 컨테이너가 최초에 꼭 실행해야만 하는 명령어가 있을 때, CMD는 컨테이너 실행 시 시작되는 명령어지만 변경할 수 있을 때 활용하시면 됩니다.

 

 

 

 

 

 

 

 

 

 

 

댓글