[Docker] 도커 가상환경 설치 및 구축

본 설치 방법은 데비안 계열의 Ubuntu 운영체제를 기준으로 설명한다.


1. 도커(Docker)

  • 설명
    • 도커는 컨테이너 기술을 사용하여 개발, 배포, 실행하는데 사용되는 플랫폼 도구이다. 컨테이너는 격리된 환경에서 어플리케이션과 환경 정보를 패키지하여 효율적인 관리와 운영이 가능하다.
  • 장점
    • 격리되고 독립적인 컨테이너 환경에 대해 일관성을 제공한다.
    • 컨테이너를 생성하기 위한 다양한 템플릿 이미지를 제공한다.
  • 단점
    • 격리된 환경에서 동작하지만 보안 위험성이 있다.
    • 도커 이미지로 인한 도커허브의 의존성이 있다.
  • 개인적인 의견
    • 도커는 한번 사용하면… 어쩔 수 없이 애용하게 되는 컨테이너 도구이다.
    • 이제… 도커 없이는… 회사 생활이 힘들 것 같다.
    • 다만, 도커 이미지의 제약사항만 없다면 LXD/LXC 기술을 컨테이너 사용도 좋을 것 같다.
  • 공식 사이트 (https://www.docker.com)

2. 설치 방법

  • docker 설치 명령어 (Root권한)
# APT 저장소 업데이트
apt-get update

# APT 의존성 설치
apt-get install -y ca-certificates curl gnupg

# APT GPG Docker Key 생성
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg

# APT Docker 저장소 추가
echo \
  "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

# APT 저장소 업데이트 (도커 저장소 업데이트)
apt-get update

# APT Docker 설치
apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
  • docker-compose 설치 명렁어
# docker-compose 다운로드
curl -SL https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-linux-x86_64 -o /usr/local/bin/docker-compose

# docker-compose 실행권한 추가
chmod +x /usr/local/bin/docker-compose

# docker-compose 링크 생성
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

3. docker 설치 확인

  • 설치 확인 명령어
docker run hello-world
  • 설치 확인 결과

4. docker-compose 설치

  • docker-compose.yml 파일 생성
version: "3"

services:
  hello_world:
    image: hello-world
  • 설치 확인 명령어
docker-compose up
  • 설치 확인 결과

5. 자주 사용하는 명령어 정리

  • docker 명령어
# docker 조회 (실행 컨테이너 출력)
docker ps

# docker 전체 조회 (전체 컨테이너 출력)
docker ps -a

# docker 이미지 다운로드
docker pull [이미지]

# docker 이미지 리스트 조회
docker images

# docker 이미지 삭제
docker rmi [이미지]

# docker 컨테이너 백그라운드 실행
docker start [컨테이너ID 또는 Name]

# docker 컨테이너 포그라운드 실행
docker run [이미지]

# docker 컨테이너 실행 멈춤
docker stop [컨테이너ID 또는 Name]

# docker 컨테이너 삭제
docker rm [컨테이너ID 또는 Name]

# docker 컨테이너 로그 조회
docker logs [컨테이너ID 또는 Name]

# docker 로그인 (https://hub.docker.com)
docker login
  • docker-compose 명령어
# docker-compose 컨테이너 포그라운드 실행
docker-compose up

# docker-compose 컨테이너 백그라운드 실행
docker-compose up -d

# docker-compose 컨테이너 실행 멈춤
docker-compose stop

# docker-compose 컨테이너 삭제
docker-compose rm

# docker-compose 컨테이널 로그
docker-compose logs

감사합니다.

Leave a Comment