설치 환경 확인
- 리눅스에 Docker 설치 시 확인해야 할 사항
- 호스트 운영체제가 최소한 3.10 버전 이상을 사용해야 도커 컨테이너를 정상적으로 사용할 수 있다.
- 도커는 64비트에 최적화돼 있으므로 32비트는 권장하지 않는다.
- sudo 명령어를 통해 설치하거나 root 권한을 소유한 계정에서 설치를 진행해야 한다.
uname -r
cat /etc/*release*
1. Docker 설치
docker 설치는 모두 sudo 권한을 가진 상태에서 실행한다.
1.1) Docker 패키지 업데이트
기존 패키지 목록 업데이트를 한다.
apt-get update
1.2) 필수 패키지 설치
Docker 설치에 필요한 필수 패키지를 설치한다.
apt-get install apt-transport-https ca-certificates curl software-properties-common
1.3) Docker 공식 GPG 키 추가
GPG 키는 소프트웨어 패키지가 해당 소프트웨어의 공식 출처로부터 온 것임을 확인하는 서명 역할을 하기 때문에,
Docker GPG 키를 추가하지 않을 경우 Docker 저장소에서 패키지를 설치하려고 하면 패키지 관리자(Apt)가 신뢰할 수 없는 소스에서 패키지를 설치하려 한다는 경고 메시지를 표시할 수 있다.
일부 패키지는 GPG 키가 없으면 패키지의 서명을 확인할 수 없어 설치에 실패할 수 있으므로 추가하도록 한다.
curl -fsSL https://download.docker.com/linux/ubuntu/gpg
1.4) Docker 저장소 추가
Docker 패키지를 Docker 공식 repository에 저장하고 싶은 경우 저장소를 추가할 수 있다. 저장소 추가 후 apt-get update 를 해주자.
add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
1.5) Docker 설치
Docker 저장소를 추가했다면 apt-get update를 하여 패키지 목록을 업데이트하고 Docker를 설치한다. docker-ce의 ce는 community edition으로 무료로 제공되는 도커 엔진을 말한다. ee는 엔터프라이즈용 에디션.
apt-get install docker-ce
1.6) Docker 서비스 시작
systemctl start docker
systemctl enable docker // 부팅 시 docker가 자동으로 시작되도록 하는 명령어
1.7) Docker 버전 및 정상 설치 확인
docker --version
systemctl status docker
1.8) Docker 작동 테스트
현재 hello-world라는 이미지가 로컬에 없기 때문에, Docker Daemon이 Docker Hub에서 최신(latest) 버전의 hello-world 이미지를 다운로드 하게 된다.
다운로드된 이미지를 기반으로 새로운 컨테이너를 생성하고 실행하고, 이 컨테이너는 도커 이미지 안에 포함된 프로그램을 실행하여 "Hello from Docker!" 라는 메시지를 출력한다.
컨테이너의 출력이 Docker 데몬을 통해 클라이언트로 전달되어 터미널에 표시되는 과정을 아래 이미지에서 확인할 수 있다.
docker run hello-world
2. Docker 사용 Guide
Docker를 사용하기 위한 기본적인 방법을 소개한다.
2.1) Docker 명령어 실행 권한 설정
Docker 명령어를 실행할 때마다 sudo를 사용하지 않으려면 현재 사용자를 docker 그룹에 추가하고, 로그아웃 후 로그인하거나 아래 명령어를 추가로 입력해준다.
sudo usermod -aG docker [user]
sudo newgrp docker
2.2) Docker 기본 명령어
- Docker 이미지 검색 - Docker Hub에서 원하는 이미지를 검색한다.
docker search [이미지 이름]
- Docker 이미지 다운로드 - 특정 이미지를 로컬 다운로드한다.
docker pull [이미지 이름]
- 컨테이너 실행 - Docker 이미지를 실행하여 컨테이너를 시작한다.
docker run [옵션] [이미지 이름]
// 백그라운드에서 Nginx 실행하는 명령어 예
docker run -d -p 80:80 nginx
- 실행 중인 컨테이너 확인
docker ps
- 실행 중인 컨테이너 중지
docker stop [컨테이너 ID 또는 이름]
- 컨테이너 삭제
docker rm [컨테이너 ID 또는 이름]
- Docker 이미지 삭제
docker rmi [이미지 ID 또는 이름]
아래는 집에서 Docker for Mac 을 이용해 맥북에 도커를 설치한 화면!
'Opensource' 카테고리의 다른 글
ELK 네트워크 모니터링 시스템 구축 - (2) Docker 우분투 컨테이너에 Elasticsearch 설치 및 실행 (4) | 2024.09.10 |
---|---|
[Docker-02] 도커 이미지와 컨테이너 (2) | 2024.09.08 |
ELK 네트워크 모니터링 시스템 구축 - (1) Ubuntu 초기 설정 (0) | 2024.08.29 |