이번 글에서는 Docker 설치 방법과 간단한 Docker 명령어들에 대한 내용을 정리하려고 한다.
환경으로는 Ubuntu를 사용했다.
🐋 Docker 설치
처음으로 Docker Engine을 설치하기 전에 Docker apt 저장소를 설정해야한다.
그런 다음 저장소에서 Docker를 설치하고 업데이트 할 수 있다.
Docker apt 저장소를 설정
# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# Add the repository to Apt sources:
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
$(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
Docker 패키지 설치 (최신)
$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Docker 설치 확인
$ docker --version
🐳 Docker 명령어
Docker 기본적인 동작과정은 위 그림과 같다.
본 절에서는, 이 과정에서 사용되는 명령어에 대해 정리해보려고 한다.
Dockerfile을 통한 이미지 빌드 명령어
Dockerfile을 기반으로 이미지를 빌드하는 데 사용되는 명령어는 docker build
이다.
docker build
명령어의 기본 형식은 다음과 같다.
$ docker build [OPTION] PATH | URL | -
- PATH | URL | -은 모두 Dockerfile을 참조하는 경로를 지정하는 부분이다.
- [OPTION]에 해당하는 주요 옵션은 다음과 같다.
옵션 | 설명 |
-t, --tag | 이름:태그 형식의 태그를 입력 |
-f, --file | 사용할 Dockerfile의 경로를 지정 (default: PATH/Dockerfile) |
-m, --memory | 메모리 제한 |
--no-cache | 이미지 빌드 시 캐시를 사용하지 않음 |
--network | 빌드 중 RUN 명령에 대한 네트워킹 모드 설정 |
이 외에도 많은 옵션이 존재하는데, Docker 공식 문서에서 이를 확인할 수 있다.
예를 들어, 다음과 같이 사용할 수 있다.
$ docker build -t image_name:v1 .
- 위 명령어는 -t 옵션을 사용해 이름:태그(image_name:v1) 형식을 설정한다.
- 명령어 맨 뒤에 .은 현재 디렉토리를 빌드 컨텍스트로 지정한다는 의미이다.
Docker 이미지 확인 명령어
Docker 환경에서 현재 사용가능한 이미지 목록을 조회하는 데 사용되는 명령어는 docker images
이다.
로컬에 저장된 Docker 이미지를 확인할 수 있으며, 이미지의 이름, 태그, 크기, 생성된 날짜 등의 정보를 표시한다.
$ docker images
각 REPOSITORY, TAG, IMAGE ID, CREATED, SIZE가 나타내는 것은 다음과 같다.
설명 | |
REPOSITORY | 이미지 이름 (e.g., image_name) |
TAG | 이미지 태그 (e.g., v1) |
IMAGE ID | 이미지의 고유 식별 ID |
CREATED | 이미지가 생성된 날짜 |
SIZE | 이미지의 크기 |
Docker 이미지 삭제 명령어
Docker 이미지 삭제 명령어는 docker rmi
이다.
$ docker rmi [IMAGE ID]
-f
를 붙여 컨테이너와 이미지를 강제로 삭제할 수도 있다.
$ docker rmi -f [IMAGE ID]
Docker 이미지를 통한 컨테이너 실행/생성 명령어
이미지를 통해 새 컨테이너를 생성하고 실행하는 명령어는 docker run
명령어이다.
docker run
명령어의 기본 형식은 다음과 같다.
$ docker run [OPTIONS] IMAGE [COMMAND]
- OPTION은 컨테이너 실행 시 추가적인 설정을 할 수 있는 선택 사항이다.
- IMAGE는 실행할 Docker 이미지 이름이다.
- COMMAND는 컨테이너 내부에서 실행할 기본 명령어가 필요한 경우 명시한다.
주요 옵션은 다음과 같다. 이 외에도 많은 옵션이 존재하는데, Docker 공식 문서에서 이를 확인할 수 있다.
옵션 | 설명 |
-d, --detach | 컨테이너를 백그라운드에서 실행 |
-p, --publish | 호스트의 포트를 컨테이너의 포트에 매핑 |
--name | 컨테이너의 이름을 지정 |
예를 들어, 다음과 같이 사용할 수 있다.
$ docker run -d -p 16800:16800 --name container_name image_name:v1
이 명령어는 image_name:v1
이미지를 기반으로 container_name
이라는 이름을 가진 Docker 컨테이너를 백그라운드에서 실행하며, 호스트 머신의 16800 포트를 컨테이너의 16800 포트와 매핑하여 애플리케이션에 접근할 수 있게 한다.
컨테이너 확인 명령어
컨테이너 목록을 확인할 수 있는 명령어는 docker ps
이다.
docker ps
는 Docker 컨테이너 관리에서 필수적인 명령어로, 컨테이너의 실행 상태를 손쉽게 모니터링하고 관리할 수 있도록 도와준다.
docker ps
명령어의 기본 형식은 다음과 같다.
$ docker ps [OPTION]
주요 옵션은 다음과 같다. 이 외에도 많은 옵션이 존재하는데, Docker 공식 문서에서 이를 확인할 수 있다.
옵션 | 설명 |
-a, --all | 실행 중이 아닌 모든 컨테이너를 표시 |
-q, --quiet | 출력 결과를 간단히 표시 (컨테이너 ID만 출력) |
--filter | 조건에 따라 특정 컨테이너만 표시 |
만약, 옵션을 주지 않으면 현재 실행 중인 컨테이너 목록을 표시한다.
각 CONTAINER ID, IMAGE, COMMAND, CREATED, STATUS, PORTS, NAMES가 나타내는 것은 다음과 같다.
설명 | |
CONTAINER ID | 컨테이너의 고유 식별 ID |
IMAGE | 컨테이너가 실행 중인 이미지 이름 |
COMMAND | 컨테이너 실행 시 사용된 명령어 |
CREATED | 컨테이너가 생성된 시점 |
STATUS | 컨테이너 상태 |
PORTS | 컨테이너와 호스트 간의 포트 매핑 정보 |
NAMES | 컨테이너 이름 |
컨테이너 관리 명령어들
1. 컨테이너 시작, 중지, 재시작 명령어 - docker start
, docker stop
, docker restart
$ docker start [CONTAINER ID] or [CONTAINER NAME]
$ docker stop [CONTAINER ID] or [CONTAINER NAME]
$ docker restart [CONTAINER ID] or [CONTAINER NAME]
2. 컨테이너 삭제 명령어 - docker rm
$ docker rm [CONTAINER ID] or [CONTAINER NAME]
3. 컨테이너 접속 명령어 - docker attach
$ docker attach [CONTAINER ID] or [CONTAINER NAME]
$ docker exec -it [CONTAINER ID] or [CONTAINER NAME] /bin/bash
마무리
이번 글에서는 Docker 설치와 Docker 명령어들에 대해 공부한 것을 간단히 정리해보았다.
다음에는 간단히 실습을 진행한 것을 포스팅할 예정이다.
Reference
Home
Docker Documentation is the official Docker library of resources, manuals, and guides to help you containerize applications.
docs.docker.com
[Docker] Docker Command(명령어) 정리(+옵션)
Docker 자주 사용하는 명령어 정리 - Docker 에서 자주 사용하는 명령어 및 옵션들을 정리해보자. 1. Docker System 정보 docker version : Docker 버전 및 상세정보 확인 docker -v : Docker 버전 및 빌드 버전을 한줄
lucas-owner.tistory.com
'Docker 및 Kubernetes > Docker' 카테고리의 다른 글
[Docker] 5. Docker Hub란 (0) | 2025.01.21 |
---|---|
[Docker] 4. 간단한 Docker 실습 (0) | 2024.11.19 |
[Docker] 2. Docker란? (0) | 2024.11.15 |
[Docker] 1. 가상화(Virtualization) (0) | 2024.11.13 |