본 설치 방법은 데비안 계열의 Ubuntu 운영체제를 기준으로 설명한다.
1. 도커(Docker)
- 설명
- 도커는 컨테이너 기술을 사용하여 개발, 배포, 실행하는데 사용되는 플랫폼 도구이다. 컨테이너는 격리된 환경에서 어플리케이션과 환경 정보를 패키지하여 효율적인 관리와 운영이 가능하다.
- 장점
- 격리되고 독립적인 컨테이너 환경에 대해 일관성을 제공한다.
- 컨테이너를 생성하기 위한 다양한 템플릿 이미지를 제공한다.
- 단점
- 격리된 환경에서 동작하지만 보안 위험성이 있다.
- 도커 이미지로 인한 도커허브의 의존성이 있다.
- 개인적인 의견
- 도커는 한번 사용하면… 어쩔 수 없이 애용하게 되는 컨테이너 도구이다.
- 이제… 도커 없이는… 회사 생활이 힘들 것 같다.
- 다만, 도커 이미지의 제약사항만 없다면 LXD/LXC 기술을 컨테이너 사용도 좋을 것 같다.
- 공식 사이트 (https://www.docker.com)
Docker: Accelerated Container Application Development
Docker is a platform designed to help developers build, share, and run container applications. We handle the tedious setup, so you can focus on the code.
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
감사합니다.