도커 정리 중...

pyk0844·2022년 10월 20일
0

도커

목록 보기
1/2

1. 도커 설치 후 로그인 & 실행

2. 도커 이미지 생성시 필요한 파일들

(root 경로에 복사 후 필요한 부분들 수정하면 됌)
Dockerfile, .dockerignore, docker-compose.yml
Dockerfile: 스크립트 이미지 생성시 사용, 되도록 하나만 생성
.dockerignore: 이미지 생성시 제외 파일 또는 폴더 목록
docker-compose.yml: 필수X, 도커로 배포할시만 필수

👉 Dockerfile 예시

FROM: base image 명시-> Dockerhub에서 공식이미지 선택
RUN: 실행 명령어
WORKDIR: work directory 설정
ENV: 환경 변수 설정
COPY: 컨테이너로 복사할 폴더 또는 파일 경로 명시
EXPOSE: 컨테이너에서 외부에 공개할 포트 명시(꼭 run -p옵션과 함께 사용) -> Docker prot 관련 참고
ENTRYPOINT: 컨테이너 수행시 반드시 실행될 명령어 작성. CMD: 실행시 인자값을 주어 명령 변경 가능.? 다시 보고 정리 예정... -> ENTRYPOINT, CMD 차이

👉 .dockerignore
.gitignore와 사용 방법 동일

3. 도커 이미지 생성 및 확인(2번 과정까지 필수)

docker build --tag <new image name>:<version(tag)> .

터미널 해당 경로에서 실행하면 됩니다. 뒤에 '.'을 붙여주지 않으면 에러 발생.. 이 외에도 필요시 다른 옵션 붙여 생성 가능..

4. 도커 컨테이너 생성 및 실행

👉 컨테이너 생성과 실행

docker run -itd --name <new conctainer name> <image name>:<version(tag)>

👉 Dockerfile에서 EXPOSE로 특정 포트를 지정한 경우

docker run -p <host port>:<container port> <image id>
ex) docker run -p 6000:6000 <image id>

-p 옵션 관련 참고
docker port 이해 참고

이 외에도 필요시 다른 옵션 붙여 실행 하면 됩니다.

5. 기타

👉 이미지 생성 확인

docker images

👉 컨테이너 생성 확인

docker ps(실행중인 컨테이너만)
docker ps -a(중단 컨테이너 포함)

👉 이미지 삭제

docker rmi <삭제할 image id>
docker rmi <image id>, <image id> ...(여러 이미지 삭제)
docker rmi -f <image id> (컨테이너 실행중 이미지 강제 삭제 필요시)

👉 컨테이너 삭제

docker rm <삭제할 container id>
docker rm <container id>, <container id> ...(여러 컨테이너 삭제)

추가로 정리할 부분들......
++ 도커허브 공식 이미지 선정 정리
++ python 에러 - 이미지 크기 관련 정리
++ node-gyp 에러 관련 정리
++ port 관련...
https://soft.plusblog.co.kr/139
https://blog.naver.com/PostView.nhn?isHttpsRedirect=true&blogId=alice_k106&logNo=220278762795
++지금 이미지 사이즈 너무 커서 줄이는게 좋을 것 같음
https://devopscube.com/reduce-docker-image-size/

0개의 댓글