๋์ปค ์ปดํฌ์ฆ
- ๋จ์ผ ์๋ฒ์์ ์ฌ๋ฌ ์ปจํ
์ด๋๋ฅผ ํ๋ก์ ํธ ๋ค๋๋ฆฌ๋ก ๋ฌถ์ด์ ๊ด๋ฆฌํ๊ธฐ ์ํด ์ฌ์ฉ
- docker-compose.yml ํ์ผ์ ํตํด ๋ช
์์ ์ผ๋ก ๊ด๋ฆฌ๊ฐ ๊ฐ๋ฅํจ.
- ํ๋ก์ ํธ ๋จ์๋ก ๋์ปค ๋คํธ์ํฌ์ ๋ณผ๋ฅจ ๊ด๋ฆฌ
- ํ๋ก์ ํธ ๋ด ์๋น์ค ๊ฐ ์์กด์ฑ ์ ์ ๊ฐ๋ฅ
- ํ๋ก์ ํธ ๋ด ์๋น์ค ๋์ค์ปค๋ฒ๋ฆฌ ์๋ํ
- ์ ์ฌ์ด ์ปจํ
์ด๋ ์ํ ํ์ฅ
ํ๋ก์ ํธ
- ๋์ปค ์ปดํฌ์ฆ์์ ๋ค๋ฃจ๋ ์ํฌ์คํ์ด์ค ๋จ์.
- ํจ๊ป ๊ด๋ฆฌํ๋ ์๋น์ค ์ปจํ
์ด๋์ ๋ฌถ์.
- ํ๋ก์ ํธ ๋จ์๋ก ๊ธฐ๋ณธ ๋์ปค ๋คํธ์ํฌ๊ฐ ์์ฑ๋จ.
์๋น์ค
- ๋์ปค ์ปดํฌ์ฆ์์ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ๊ธฐ ์ํ ๋จ์.
- scale ์ ํตํด ์๋น์ค ์ปจํ
์ด๋์ ์ ํ์ฅ ๊ฐ๋ฅ.
์ปจํ
์ด๋
- ์๋น์ค๋ฅผ ํตํ์ฌ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ๋ค.
docker-compose.yml
version, service, networks, volumes ์ด 4๊ฐ์ ์ต์์ ์ต์
version
- ๊ฐ๋ฅํ ์ต์ ๋ฒ์ ์ ์ฌ์ฉ ๊ถ์ฅ
- ๋์ปค ์์ง ๋ฐ ๋์ปค ์ปดํฌ์ฆ ๋ฒ์ ์ ๋ฐ๋ฅธ ํธํ์ฑ ๋งคํธ๋ฆญ์ค๋ฅผ ์ฐธ๊ณ ํด์ผํจ(๊ณต์ ๋ฌธ์ ์ฐธ๊ณ )
- ๋ฒ์ 3๋ถํฐ docker swarm ์๋น์ค๋ฅผ docker-compose.yml ๋ก ์ ์ผ์ด ๊ฐ๋ฅ
๋์ปค ์ค์?
- ์ฌ๋ฌ ์๋ฒ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ค์ ํด๋ฌ์คํฐ๋ฅผ ํ์ฑํ์ฌ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ๋ ์ปจํ
์ด๋ ์ค์ผ์คํธ๋ ์ด์
์์คํ
. ์ฟ ๋ฒ๋คํฐ์ค์ ๋์ผ ๋ชฉ์ ์ผ๋ก ๋ง๋ค์ด์ก์ง๋ง ์ธ๊ธฐ๋ฅผ ๋์ง ๋ชปํจ.
service
- ํ๋ก์ ํธ ๋ด์ ๊ตฌ์ฑ๋๋ ์ฌ๋ฌ ํ๋ก์ ํธ๋ฅผ ์๋ธ ํค๋ฅผ ํตํด์ ๊ตฌ์ฑํ ์ ์์.
networks
- ๋คํธ์ํฌ ํค ๋ฐ์์ ์ ์ํด์ ์ฌ์ฉ ๋ํดํธ๋ผ๋ ์ด๋ฆ์ผ๋ก ๊ธฐ๋ณธ ๋คํธ์ํฌ๊ฐ ๋ธ๋ฆฟ์ง ๋ชจ๋๋ก ์์ฑ๋จ.
volumes
- ๋ณผ๋ฅจํค์์ ์ ์์์ ์ฌ์ฉ
docker compose ๋ช
๋ น์ด
# Foreground๋ก ๋์ปค ์ปดํฌ์ฆ ํ๋ก์ ํธ ์คํ
$ docker-compose up
# Background๋ก ๋์ปค ์ปดํฌ์ฆ ํ๋ก์ ํธ ์คํ
$ docker-compose up -d
# ํ๋ก์ ํธ ์ด๋ฆ my-project๋ก ๋ณ๊ฒฝํ์ฌ ๋์ปค ์ปดํฌ์ฆ ํ๋ก์ ํธ ์คํ
$ docker-compose -p my-project up -d
# ํ๋ก์ ํธ ๋ด ์ปจํ
์ด๋ ๋ฐ ๋คํธ์ํฌ ์ข
๋ฃ ๋ฐ ์ ๊ฑฐ
$ docker-compose down
# ํ๋ก์ ํธ ๋ด ์ปจํ
์ด๋, ๋คํธ์ํฌ ๋ฐ ๋ณผ๋ฅจ ์ข
๋ฃ ๋ฐ ์ ๊ฑฐ
$ docker-compose down -v
# ํ๋ก์ ํธ ๋ด ์๋น์ค ๋ก๊ทธ ํ์ธ
$ docker-compose logs
# ํ๋ก์ ํธ ๋ด ์ปจํ
์ด๋ ์ด๋ฒคํธ ํ์ธ
$ docker-compose events
# ํ๋ก์ ํธ ๋ด ์ด๋ฏธ์ง ๋ชฉ๋ก
$ docker-compose images
# ํ๋ก์ ํธ ๋ด ์ปจํ
์ด๋ ๋ชฉ๋ก
$ docker-compose ps
# ํ๋ก์ ํธ ๋ด ์คํ์ค์ธ ํ๋ก์ธ์ค ๋ชฉ๋ก
$ docker-compose top
์ฃผ์ ์ฌ์ฉ ๋ชฉ์
๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ฑ
- ํน์ ํ๋ก์ ํธ์ ๋ก์ปฌ ๊ฐ๋ฐ ํ๊ฒฝ ๊ตฌ์ฑ ๋ชฉ์ ์ผ๋ก ์ฌ์ฉ.
- ํ๋ก์ ํธ์ ์์กด์ฑ์ ์ฝ๊ฒ ๋์ธ ์ ์์.
์๋ํ๋ ํ
์คํธ ํ๊ฒฝ ๊ตฌ์ฑ
- CI/CD ํ์ดํ๋ผ์ธ ์ค ์ฝ๊ฒ ๊ฒฉ๋ฆฌ๋ ํ
์คํธ ํ๊ฒฝ์ ๊ตฌ์ฑํ์ฌ ํ
์คํธ ์ํ ๊ฐ๋ฅ
๋จ์ผ ํธ์คํธ ๋ด ์ปจํ
์ด๋๋ฅผ ์ ์ธ์ ๊ด๋ฆฌ
- ๋จ์ผ ์๋ฒ์์ ์ปจํ
์ด๋๋ฅผ ๊ด๋ฆฌํ ๋ YAML ํ์ผ์ ํตํด ์ ์ธ์ ์ผ๋ก ๊ด๋ฆฌ ๊ฐ๋ฅ.