3. Docker 기본 명령어
3.1 docker --version
docker --version
명령어는 현재 설치된 Docker의 버전을 확인합니다. 이 명령어는 Docker가 제대로 설치되었는지 점검할 때 유용합니다.
사용법:
docker --version
출력 예시:
Docker version 20.10.7, build f0df350
3.2 docker pull
docker pull
명령어는 Docker Hub 또는 지정된 Docker 레지스트리에서 이미지를 다운로드합니다. 이미지는 로컬 시스템에서 사용될 수 있도록 풀(pull)됩니다.
사용법:
docker pull <이미지명>:<태그>
예시:
docker pull ubuntu:20.04
위 명령어는 ubuntu:20.04
이미지를 Docker Hub에서 다운로드합니다.
3.3 docker run
docker run
명령어는 이미지를 기반으로 새로운 컨테이너를 실행합니다. 실행할 때 여러 가지 옵션을 설정할 수 있습니다.
사용법:
docker run [옵션] <이미지명> [명령어]
예시:
docker run -d -p 80:80 nginx
위 명령어는 nginx
이미지를 기반으로 새로운 컨테이너를 백그라운드에서 실행하며, 호스트의 포트 80을 컨테이너의 포트 80에 매핑합니다.
주요 옵션:
-d
: 백그라운드에서 실행 (detached 모드)-p <호스트 포트>:<컨테이너 포트>
: 포트 포워딩--name <컨테이너명>
: 컨테이너에 이름을 지정
3.4 docker ps
docker ps
명령어는 실행 중인 컨테이너의 목록을 표시합니다. 기본적으로 현재 실행 중인 컨테이너만 표시되며, 모든 컨테이너를 보고 싶다면 -a
옵션을 사용할 수 있습니다.
사용법:
docker ps
docker ps -a
출력 예시:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
f1b2d4b8a98b nginx "nginx -g 'daemon off;'" 3 minutes ago Up 3 minutes 0.0.0.0:80->80/tcp happy_boyd
주요 옵션:
-a
: 종료된 컨테이너를 포함한 모든 컨테이너 표시-q
: 간략한 컨테이너 ID만 출력
3.5 docker stop
docker stop
명령어는 실행 중인 컨테이너를 중지합니다. docker stop
은 기본적으로 SIGTERM 신호를 보내어 컨테이너를 종료시키고, 지정된 시간 내에 종료되지 않으면 SIGKILL 신호를 보냅니다.
사용법:
docker stop <컨테이너명 또는 컨테이너ID>
예시:
docker stop happy_boyd
위 명령어는 happy_boyd
라는 이름의 컨테이너를 중지시킵니다.
3.6 docker rm
docker rm
명령어는 중지된 컨테이너를 삭제합니다. 컨테이너가 실행 중일 경우 삭제할 수 없으며, 먼저 docker stop
으로 컨테이너를 중지해야 합니다.
사용법:
docker rm <컨테이너명 또는 컨테이너ID>
예시:
docker rm happy_boyd
위 명령어는 happy_boyd
라는 이름의 중지된 컨테이너를 삭제합니다.
주요 옵션:
-f
: 강제로 실행 중인 컨테이너를 삭제
3.7 docker rmi
docker rmi
명령어는 Docker 이미지를 삭제합니다. 이미지를 삭제할 때 해당 이미지로 생성된 컨테이너가 존재하면 삭제할 수 없습니다. 이 경우, 먼저 해당 컨테이너를 삭제해야 합니다.
사용법:
docker rmi <이미지명>
예시:
docker rmi nginx:latest
위 명령어는 nginx:latest
이미지를 삭제합니다.
주요 옵션:
-f
: 강제로 이미지를 삭제
3.8 docker exec
docker exec
명령어는 실행 중인 컨테이너 안에서 명령어를 실행할 수 있도록 해줍니다. 이를 통해 컨테이너 내에서 셸을 실행하거나 다른 명령을 실행할 수 있습니다.
사용법:
docker exec -it <컨테이너명 또는 컨테이너ID> <명령어>
예시:
docker exec -it happy_boyd bash
위 명령어는 happy_boyd
컨테이너에서 bash
셸을 실행하여 해당 컨테이너 내부에 들어갑니다.
주요 옵션:
-i
: 표준 입력을 활성화-t
: 터미널을 할당 (인터랙티브 모드)
3.9 docker build
docker build
명령어는 Dockerfile
을 사용하여 이미지를 빌드합니다. 이 명령어는 현재 디렉터리 또는 지정된 경로에서 Dockerfile
을 찾아 이미지를 생성합니다.
사용법:
docker build -t <이미지명> <경로>
예시:
docker build -t myapp:latest .
위 명령어는 현재 디렉터리의 Dockerfile
을 사용하여 myapp:latest
이미지를 빌드합니다.
주요 옵션:
-t
: 이미지를 태그 지정-f
: 다른 Dockerfile 경로 지정
3.10 docker logs
docker logs
명령어는 컨테이너에서 출력된 로그를 확인할 수 있습니다. 이를 통해 컨테이너 내에서 발생한 오류나 상태를 확인할 수 있습니다.
사용법:
docker logs <컨테이너명 또는 컨테이너ID>
예시:
docker logs happy_boyd
위 명령어는 happy_boyd
컨테이너의 로그를 출력합니다.
주요 옵션:
-f
: 실시간 로그 출력 (tail -f와 유사)--since <시간>
: 특정 시간 이후의 로그만 출력
3.11 docker-compose
docker-compose
는 여러 개의 Docker 컨테이너를 정의하고 관리할 수 있는 도구입니다. docker-compose.yml
파일을 사용하여 애플리케이션의 여러 서비스를 설정하고 실행할 수 있습니다.
주요 명령어:
docker-compose up
: 정의된 서비스들을 실행합니다.docker-compose down
: 실행 중인 서비스를 종료하고 삭제합니다.docker-compose build
: Docker Compose에서 정의한 서비스의 이미지를 빌드합니다.
예시:
docker-compose up -d
위 명령어는 docker-compose.yml
파일에 정의된 서비스를 백그라운드에서 실행합니다.
'IT > Docker' 카테고리의 다른 글
Docker 주요 개념 (0) | 2024.11.18 |
---|---|
Docker (0) | 2024.11.18 |