7.1 컨테이너 작업을 위한 명령어
Docker CLI (Command Line Interface) 또는 간단히 명령줄 인터페이스. 이를 통해 컨테이너, 이미지, 네트워크 및 볼륨을 관리하는 명령어를 입력할 수 있어. Docker Desktop이라는 시각적이고 더 간단한 인터페이스를 사용해서도 많은 작업이 가능하지만, Docker CLI의 기본 명령어를 알면 Docker를 더 효과적으로 사용할 수 있어. 이번 강의에서는 Docker 작업을 시작하는 데 도움이 되는 주요 명령어를 다룰 거야.
기본 명령어 목록은 다음 테이블에 정리되어 있어:
| 명령어 | 설명 |
|---|---|
| docker run | 새 컨테이너 실행 |
| docker ps | 실행 중인 컨테이너 목록 |
| docker stop | 실행 중인 컨테이너 중지 |
| docker start | 중지된 컨테이너 실행 |
| docker restart | 컨테이너 재시작 |
| docker rm | 중지된 컨테이너 삭제 |
| docker logs | 컨테이너 로그 보기 |
| docker exec | 컨테이너 내부에서 명령 실행 |
1. 새 컨테이너 실행하기 (docker run):
이 명령어는 nginx 이미지를 다운로드하고 -d 옵션으로 백그라운드에서 실행하며, 컨테이너 이름을 my_container로 지정해줘.
docker run -d --name my_container nginx
2. 실행 중인 컨테이너 목록 보기 (docker ps):
실행 중인 모든 컨테이너를 나열해. 중지된 컨테이너를 포함한 모든 컨테이너를 보려면 -a 옵션을 사용해봐.
docker ps
3. 컨테이너 중지하기 (docker stop):
my_container라는 이름의 컨테이너를 중지시켜.
docker stop my_container
4. 중지된 컨테이너 실행하기 (docker start):
중지된 컨테이너를 다시 실행해봐.
docker start my_container
5. 컨테이너 재시작하기 (docker restart):
컨테이너를 중지시키고 즉시 다시 시작해.
docker restart my_container
6. 컨테이너 삭제하기 (docker rm):
중지된 컨테이너를 삭제할 수 있어. 삭제 전에 컨테이너를 반드시 중지해야 해.
docker rm my_container
7. 컨테이너 로그 보기 (docker logs):
컨테이너 로그를 출력해. 디버깅과 모니터링에 유용해.
docker logs my_container
8. 컨테이너 내부에서 명령 실행하기 (docker exec):
실행 중인 컨테이너 내부에 인터랙티브 터미널을 열 수 있어.
docker exec -it my_container /bin/bash
7.2 이미지 작업을 위한 명령어
기본 명령어 목록은 아래 표에 제공되어 있어:
| 명령어 | 설명 |
|---|---|
| docker pull | Docker Hub에서 이미지 다운로드 |
| docker build | Dockerfile에서 이미지 빌드 |
| docker images | 로컬 이미지 목록 |
| docker rmi | 이미지 삭제 |
| docker tag | 이미지에 새로운 태그 할당 |
1. 이미지 다운로드 (docker pull):
Docker Hub에서 latest 태그가 있는 nginx 이미지를 다운로드해.
docker pull nginx:latest
2. 이미지 빌드 (docker build):
현재 디렉토리에서 Dockerfile을 사용하여 새로운 이미지를 빌드하고 태그 my_image를 할당해 (점으로 표시).
docker build -t my_image .
3. 로컬 이미지 목록 (docker images):
로컬에 저장된 모든 이미지를 보여줘.
docker images
4. 이미지 삭제 (docker rmi):
my_image 태그가 있는 이미지를 삭제해. 이미지를 사용 중인 컨테이너가 없도록 확인해야 해.
docker rmi my_image
5. 이미지에 새로운 태그 할당 (docker tag):
이미지 my_image에 my_repo/my_image:latest라는 새로운 태그와 이름을 할당해. 버전 관리를 쉽게 만들어줘.
docker tag my_image my_repo/my_image:latest
7.3 네트워크 작업 명령어
주요 명령어 목록은 아래 표에 나와있어:
| 명령어 | 설명 |
|---|---|
| docker network ls | 모든 Docker 네트워크 목록 |
| docker network create | 새로운 네트워크 생성 |
| docker network inspect | 네트워크 세부정보 확인 |
| docker network connect | 컨테이너를 네트워크에 연결 |
| docker network disconnect | 컨테이너를 네트워크에서 분리 |
1. 모든 네트워크 목록 (docker network ls):
사용 가능한 모든 Docker 네트워크를 출력해.
docker network ls
2. 새로운 네트워크 생성 (docker network create):
my_network 이름의 새로운 네트워크를 생성해.
docker network create my_network
3. 네트워크 세부정보 확인 (docker network inspect):
my_network 네트워크에 대한 자세한 정보를 제공하며, 연결된 컨테이너도 포함돼 있어.
docker network inspect my_network
4. 컨테이너를 네트워크에 연결 (docker network connect):
my_container 컨테이너를 my_network 네트워크에 연결해.
docker network connect my_network my_container
5. 컨테이너를 네트워크에서 분리 (docker network disconnect):
my_container 컨테이너를 my_network 네트워크에서 분리해.
docker network disconnect my_network my_container
7.4 볼륨 작업 명령어
주요 명령어 목록은 아래 표에 정리되어 있어:
| 명령어 | 설명 |
|---|---|
| docker volume ls | 모든 Docker 볼륨 목록 |
| docker volume create | 새 볼륨 생성 |
| docker volume inspect | 볼륨 세부 정보 확인 |
| docker volume rm | 볼륨 삭제 |
1. 모든 볼륨 목록 (docker volume ls):
Docker에서 생성된 모든 볼륨 목록을 출력해.
docker volume ls
2. 새 볼륨 생성 (docker volume create):
my_volume이라는 이름의 새 볼륨을 생성해.
docker volume create my_volume
3. 볼륨 세부 정보 확인 (docker volume inspect):
my_volume에 대한 자세한 정보를 제공해, 위치 및 드라이버를 포함해서.
docker volume inspect my_volume
4. 볼륨 삭제 (docker volume rm):
my_volume이라는 이름의 볼륨을 삭제해. 삭제 전에 볼륨이 컨테이너에서 사용되지 않는지 확인해.
docker volume rm my_volume
GO TO FULL VERSION