FROM alpine
FROM ubuntu:20.04
docker build 옵션 Dockerfile의 경로
docker build --tag myimage . (.은 현재폴더)
docker build --tag test2 -f test_dockerfile .
test_dockerfile이름의 파일로 test2 이미지를 생성
LABEL maintainer = "cha@naver.com"
LABEL version = "1.0"
COPY ./폴더명(이미지에 추가할 파일들이 들어있음) /복사한 파일들이 들어갈 경로
CMD ["명령어", "매개변수"] : 컨테이너가 실행될 때 실행될 명령어를 지정합니다. 이미지에서 CMD는 하나만 존재할 수 있으며, 컨테이너가 실행될 때 이 명령어가 실행됩니다. 파일에 CMD가 있더라도 뒤에 CMD를 적으면 뒤의 것이 적용된다(마지막 CMD로 덮어쓴다)
ENTRYPOINT ["명령어", "매개변수"] : docker run 시 함께 들어가는 CMD 명령어 덮어씌여지지않고 반드시 실행해야하는 명령을 기입할 때 사용한다. ENTRYPOINT 명령어가 존재하는 경우, CMD 명령어 및 매개변수는 ENTRYPOINT 명령어와 결합되어 실행됩니다.
EXPOSE : 컨테이너 생성 시 특정 포트를 외부에 오픈한다.
docker run -p도 포트를 오픈하는 것이지만 오픈한 포트를 호스트 PC와 연결하는 것까지 이루어진다. EXPOSE로 먼저 오픈한 후 -P (대문자)를 사용한다면 랜덤포트와 expose 포트를 자동으로 연결한다.
EXPOSE 80
docker run -P -d 이름
0.0.0.0:랜덤포트->80/tcp
FROM mysql:lastest
ENV MYSQL_ROOT_PASSWORD=설정
ENV MYSQL_DATABASE=설정
WORKDIR /usr/local
CMD /bin/cat/index.html