백엔드 개발

Docker 명령어

browoo97 2022. 9. 22. 20:28

- 이미지 빌드

docker build .

 

- 이미지 name:tag 조합 지정 후 빌드 - name:tag 은 고유 식별자

docker build -t {name}:{tag} .

 

- 이미지 name:tag 수정 - {tag} 생략 가능 - 기존 이미지는 삭제되지 않음.

docker tag {old name}:{old tag} {new name}:{new tag}

 

- 이미지 상세 정보 조회

docker image inspect {image_id}

 

- 중지된 컨테이너 실행 - detached mode defalut

docker start  {container name} or {container id}

 

- 컨테이너 실행 - attached mode default

docker run -p {local port}:{docker port} {image_id}

 

- 컨테이너 실행 (컨테이너 종료 시 자동 삭제)

docker run -p {local port}:{docker port} --rm {image_id}

 

- name:tag로 컨테이너 실행

docker run -p {local port}:{docker port} {name:tag}

 

- 컨테이너 이름 지정 후 실행

docker run -p {local port}:{docker port} --name {custom_name} {image_id}

 

- detached 모드로 컨테이너 실행

docker run -p {local port}:{docker port} -d {image_id}

 

- 인터렉티브 모드로 컨테이너 실행

docker run -p {local port}:{docker port} -it {image_id}

 

- 실행중인 컨테이너에 attached 모드 접근

docker attach {container name} or {container id}

 

- 컨테이너 중지

docker stop {컨테이너 name}

 

- 모든 이미지 리스트 조회

docker images

 

- 실행중인 컨테이너 리스트 조회

docker ps

 

- 모든 컨테이너 리스트 조회

docker ps -a

 

- 컨테이너 제거

docker rm {컨테이너 name}

 

- 이미지 제거 - 반드시 해당 이미지를 종속하고 있는 컨테이너를 모두 제거해야함.

docker rmi {이미지 name}

 

- 제거 가능한 이미지 모두 제거

docker image prune -a

 

- 제거 가능한 컨테이너 모두 제거

docker container prune

 

- 폴더 or 파일 복사

1. docker cp {복사할 폴더 or 파일의 경로} {컨테이너 name}:{생성될 내부 경로}

2. docker cp {컨테이너 name}:{생성될 내부 경로} {복사할 폴더 or 파일의 경로}

 

- Docker Login

docker login

 

- Docker logout

docker logout

 

- Docker hub Repositories push - image 이름이 {Docker Id/Repository name} 과 같아야함.

docker push {name}/{tag}

 

- Docker hub image pull

docker pull {Docker Id}/{Repository name}

 

- 컨테이너 로그 기록 보기

docker logs {container name} or {container id}

 

- 볼륨 리스트 조회

docker volume ls

 

-  볼륨 제거

docker volume {볼륨 이름}

 

- 제거 가능한 볼륨 모두 제거

docker volume prune