Docker Hub란?
Docker Image의 저장소이자 공유 플랫폼입니다. Github와 비슷합니다. Docker Image를 Docker Hub에 업로드하고 공개된 저장소는 다른 사람들이 쉽게 Pull 해 사용할 수 있습니다. Docker Desktop 앱에서 cmd + k를 입력해 찾고자 하는 image 이름을 검색하면 hub에서 검색된 image들이 검색됩니다!

도커 허브에서 이미지를 Pull해 Container를 생성해 실행할 수 있습니다 :)
멀티 어플리케이션을 같이 실행해야 하면 어떻게 하지?
예컨대 웹서버, 데이터베이스, 캐시 서버 등등을 같이 실행해야 하는데 이럴 땐 어떻게 할까요? 이 모두를 Docker Compose로 관리할 수 있습니다.
Docker Compose란?
Docker Compose는 여러 개의 Docker 컨테이너를 정의하고 이들을 함께 관리할수록 도와주는 도구입니다.
version: '3'
services:
web:
image: nginx:alpine
ports:
- "8080:80"
volumes:
- ./html:/usr/share/nginx/html
db:
image: mysql:5.7
environment:
MYSQL_ROOT_PASSWORD: example
volumes:
- db_data:/var/lib/mysql
volumes:
db_data:
예컨대 위 docker compose 파일을 바탕으로 컨테이너를 생성한다면 쉽게 웹 애플리케이션과 데이터베이스를 실행할 수 있습니다.
web application 은 nginx:alpine이라는 image로 부터 실행되고 db는 mysql:5.7이라는 image로부터 실행되는 것이죠. 여러 개의 이미지를 불러오고 멀티 컨테이너를 정의할 수 있습니다. 그럼 기본 실습을 해보겠습니다.
Docker Compose 실습
git clone https://github.com/docker/multi-container-app
cd multi-container-app
multi-container-app repository를 클론해주고 해당 디렉터리로 이동합니다.
docker compose up -d
해당 command를 통해 compose 파일을 통해 컨테이너를 build하고 run 합니다.
(-d는 detached mode라는 뜻입니다)
이렇게 실행했다면 두개의 컨테이너가 실행됩니다. (Todo-app과 todo-database)
업데이트
도커로 개발을 할때 코드를 수정하거나 업데이트를 해야 할 경우가 있습니다. 이럴 땐 어떻게 해야 할까요? docker compose watch를 사용합니다.
docker compose watch
'Development > Docker' 카테고리의 다른 글
| 도커 기초 가이드 - Docker Basic Guide (5) (0) | 2024.08.22 |
|---|---|
| 도커 기초 가이드 - Docker Basic Guide (4) (0) | 2024.08.22 |
| 도커 기초 가이드 - Docker Basic Guide (3) (0) | 2024.08.22 |
| 도커 기초 가이드 - Docker Basic Guide (1) (0) | 2024.08.13 |
| Docker란? (0) | 2024.08.12 |