์ด ๋ฒ์ ์์ Compose์ ์ํด ์์ฑ ๋ ์ปจํ ์ด๋์ ๊ธฐ๋ณธ ์ด๋ฆ ์ง์ ์ฒด๊ณ
<project>_<service>_<index>
์์ ๋ค์์ผ๋ก ๋ณ๊ฒฝ๋์์ต๋๋ค.
<project>_<service>_<index>_<slug>
yaml ํ์ผ์์ container_name
๋ฅผ ์ฌ์ฉํ๋ ๊ฒ ์ธ์์ด ๋์์ ๋นํ์ฑํํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
์ปจํ
์ด๋ ์ด๋ฆ์ ์์กดํ๊ณ ์ค์์ ์ฌ์ฉํ์ง ์๊ณ ๋จ์ผ ์ปจํ
์ด๋ ์คํ ๋ง ์ฌ์ฉํ๋ ์คํฌ๋ฆฝํธ๊ฐ ๋ง์ด ์์ต๋๋ค. ์ด ๋ณํ๋ ์ฐ๋ฆฌ์๊ฒ ๋งค์ฐ ๋ถํธํฉ๋๋ค.
์ฃ์กํฉ๋๋ค. ์ฃ์กํฉ๋๋ค.
์ฌ๊ธฐ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. ์ด ์ฌ๋ฌ๊ทธ ๊ธฐ๋ฅ์ ์ ํ ์ฌํญ์ด์ด์ผํฉ๋๋ค. up ๋๋ build ๋ช ๋ น์ ํ๋๊ทธ๋ฅผ ์ ๋ฌํ์ฌ ๋๋ ๊ฒ์ด ์ผ๋ง๋ ์ด๋ ต์ต๋๊น?
๋์ํฉ๋๋ค. ์ด๊ฒ์ ์ ํ ์ฌํญ์ด์ด์ผํฉ๋๋ค. Docker Compose๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋ฌ ํ๋ก๊ทธ๋จ์ ์ด์ 1.22๋ก ๋ค์ด ๊ทธ๋ ์ด๋ํ๋ ๊ฒฝ์ฐ์๋ง ์คํ๋ฉ๋๋ค.
๋์ํฉ๋๋ค. ์ด๊ฒ์ ์ ํ ์ฌํญ์ด์ด์ผํฉ๋๋ค. ์ฐ๋ฆฌ๋์ด ์ฌ๋ฌ๊ทธ ๊ธฐ๋ฅ์ด ์ ํ ํ์ํ์ง ์์ผ๋ฉฐ ๋ง์ bash ์คํฌ๋ฆฝํธ๊ฐ ์ด์ ์ด๋ฆ โโ์ง์ ํ์์ ์ฌ์ฉํ๊ณ ์์ต๋๋ค.
์ฐ๋ฆฌ๋ ๋ง์ฐฌ๊ฐ์ง์ ๋๋ค. "volumes from"๊ธฐ๋ฅ์ ์ฌ์ฉํ๊ณ ์ด์ ์ด๋ฆ โโ์ง์ ์ฒด๊ณ์ ์์กดํ๋ฏ๋ก 1.22๋ฅผ ์ ์งํด์ผํฉ๋๋ค. 1.24์์ ์ต์ ๊ธฐ๋ฅ์ผ๋ก ๋ง๋์ญ์์ค.
์ด ๊ธฐ๋ฅ์ ์ปจํ ์ด๋๊ฐ ์ ์ ๋ ํ ์ฐธ์กฐํ๊ธฐ ์ด๋ ต๊ฒ ๋ง๋ญ๋๋ค.
๋๋์ด ๋ณํ์ ์์ ์ ์ดํดํ์ง ๋ชปํ๋ค. ํ์ฌ docker๋ compose๋ ์๋น์ค ๊ฒ์์ ์ ๊ณตํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ์ปจํ ์ด๋ ๋ด๋ถ์์ ํธ์คํธ ์ด๋ฆ์ ์ป์ผ๋ ค๋ฉด ์ด๋ป๊ฒํด์ผํฉ๋๊น? ๋๋ง์ ์๋น์ค ๊ฒ์์ ๋กค๋ง ํ์๊ฒ ์ต๋๊น?
BTW,์ด ๋ณ๊ฒฝ์ ์ด์ ์ ๋ฌด์์ ๋๊น? ์ ๋ง ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ๊นจ๋จ๋ฆด ๊ฐ์น๊ฐ ์์ต๋๊น?
๊ธฐ๋ณธ _slug ์ด๋ฆ ๋ณ๊ฒฝ์ ์ฌ๋ฐ๋ฅธ ์ ๊ทผ ๋ฐฉ์์ด์ง๋ง ํ๊ฒฝ ๋ณ์ ๋๋ ๋ช ๋ น ์ค ์ต์ ์ ํตํด์ด๋ฅผ ๋นํ์ฑํํ๋ ๋ฐฉ๋ฒ์ด ์์ผ๋ฉด ๊ธฐ์กด ์ํฌ ํ๋ก๊ฐ ๋ง์ด ์ค๋จ๋ฉ๋๋ค. <= 1.22.0 docker-compose ์ด๋ฆ ์ง์ ๋์์ ๋ค์ ๊ฐ์ ธ ์ค๊ธฐ ์ํด ์ผ์ข ์ ํ๋๊ทธ๋ฅผ ์ถ๊ฐํ๋ ๊ธฐ๋ฅ ์์ฒญ์ด๋ผ๊ณ ์๊ฐํ์ญ์์ค.
์ฃ์กํฉ๋๋ค. "external_links"๋ ์ง๊ธ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ฐ๊ฒฐํ๋ ค๋ฉด ์ปจํ
์ด๋์ ์ด๋ฆ์ ์์์ผํฉ๋๋ค.
์ ํ ์ฌํญ ์ธ ๊ฒฝ์ฐ +1
@ shin-์ด ์๋ก์ด ํ๋์ ์์ ํ ํํ๊ฐ๋ฉ๋๋ค. ์์์ slug
์ ์๋ ๋ค์๊ณผ ๊ฐ์ ๋ค๋ฅธ ํ์ผ ๋ด์์ ํ๋์ docker-compose ํ์ผ์์ ์์๋ ์ปจํ
์ด๋๋ฅผ ์ฒ๋ฆฌ ํ ์์์์ต๋๋ค.
services:
app:
image: app
external_links:
- "other-project_other-app_1:other-app"
networks:
default:
external:
name: other-project_default
๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ ๋ค์ผ. ์ด์ ์ด๊ฒ์ ์ ํ ์๋ํ์ง ์์ต๋๋ค.
์ด๊ฒ์ด ์ ์ด๋ ์ ํ ์ฌํญ์ด ์๋ ์ด์ ๋ ๋ฌด์์ ๋๊น?
๋์ปค์ ๋ ๋ค๋ฅธ ๋จ๊ณ๋ ์ฃฝ์์ ๊ตฌ์ฑํฉ๋๋ค.
๋ฐ๋ผ์ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. container_name
๋งค๊ฐ ๋ณ์๋์๋ ๊ทธ๋๋ก ์ฌ์ฉ๋๊ณ slug
๋ ์ฌ์ฉ๋์ง ์์ต๋๋ค. ์ ์ด๋ ๋์์ด๋ฉ๋๋ค.
@ shin-, ์ด์ ๋ํ ๋ฒ๊ทธ ๋ฆฌํฌํธ๋ฅผ ๊ณ ๋ คํ์ง ๋ง์ญ์์ค slug
์ฌ์ฉ๋์ง ์๋ container_name
. ๊ทธ๋๋ก ๋์ญ์์ค. ๋๋ ๋ง ๊ทธ๋๋ก ์ฌ๊ธฐ์ ํฌ์ฅํ๊ณ ์์ต๋๋ค.
์ค ์๋ ! https://github.com/ansible/ansible/issues/47978
๋ณ๊ฒฝ์ ๋ํ ์ธ์ผํฐ๋ธ๋ ์ดํดํ์ง๋ง, ํนํ ๊ฐ๋ฐ์์๊ฒ ์คํฌ๋ฆฝํธ๋ฅผ ์กฐ์ ํ ์๊ฐ์ ์ค ์์๋ ์ ์ ๊ธฐ๊ฐ์ด ์๊ธฐ ๋๋ฌธ์ ๋งค์ฐ ํผ๋ ์ค๋ฝ์ต๋๋ค. ๋ฌธ์ ๊ทธ๋๋ก ์์ํ ์กด์ฌํ๋์ด ๋ช ๋ช ๊ท์น์ ์ผ๋์๋๊ณ ๋ง์ ์คํฌ๋ฆฝํธ๊ฐ ์์ฑ๋์์ต๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก์ด ๋ณ๊ฒฝ์ผ๋ก ์ธํด docker-compose 1.23์ ๋ค๋ฅธ docker-compose์ ์ญ ํธํ๋์ง ์์ต๋๋ค.
@ shin- ๊ฐ์ธ์ ์ผ๋ก ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ๋์ปค-์๊ณก ๋ฐ ๋์ปค ํ์ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ด ๋ฌด์์ธ์ง, ๊ทธ๋ฆฌ๊ณ ์ ์ฒด ์ฐ์ ์ด ์์กดํ๋ ๋๋ฆฌ ์ฑํ ๋ ํ๋ก์ ํธ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ด๋ฏธ ๋ฐฐ์์ผํฉ๋๋ค.
์ฒซ์งธ, ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ ์ด์ ์ ๋ณด์ฅํ์ง ์์๋ ๊ฒ์ ๊นจ๋จ๋ฆฌ๋ ๊ฒ์ด ์๋๋๋ค. ์ด ๋ฌผ๊ฑด์ ์๋ฌด๋ ์ฌ์ฉํ์ง ์์๋ ์๋ฌด๋ ์ ๊ฒฝ ์ฐ์ง ์์ต๋๋ค.
์ญ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ด ์ค์ ๋ก ์์กดํ๋ ๊ฒ์ ๊นจ๋จ๋ฆด ๋์
๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๊ฒฐ๊ตญ Apache 2.0์ด๊ณ ์ ์ฒด ํ๋ก์ ํธ provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND
์ด๊ธฐ ๋๋ฌธ์ ์ด๋ค ๋ณด์ฅ์ด ์์๋์ง๋ ์ค์ํ์ง ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ๋ฌด์์ ์์กดํ๋์ง ๊ฒฐ์ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ๋ถ (์ ์ฒด ํ)์ ๋๊ฐ ์ฌ๋ฌ๋ถ์ ํ๋ก์ ํธ๋ฅผ ์ฌ์ฉํ๋์ง, ์, ์ด๋ป๊ฒ ์ฌ์ฉ ํ๋์ง๋ฅผ ์ธ์ํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ธฐ ์์ํด์ผํฉ๋๋ค.
๋์งธ, ์ด๋ฌํ ๋ณํ๋ฅผ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ ๋์
ํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์์ผํฉ๋๋ค. ์ด "๋ฌด์์ ์ ๋ฏธ์ฌ"๋ ์ฌ์ฉ์๊ฐ external_links
๋ฐ volumes_from
์ฌ์ฉํ๋ ๋ฐฉ์์ ํ์คํ ์์์ํต๋๋ค. ๋ฐ๋ผ์ ๋ช
์์ ์ธ container_name
์ธํธ๊ฐ ์๊ฑฐ๋ ๊ทธ๋ ๊ฒ ๋ณด์ผ ๋ ์ฌ์ฉ ์ค๋จ ๊ฒฝ๊ณ ๋ ๋งค์ฐ ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ๋ค์ ๋ฌธ์๋ "๋ค๋ฅธ ์ฌ๋์ด ์ํํ๋ ์์
"์ ๋ํด ์ ์๊ณ ์์ด์ผํฉ๋๋ค.
์ ์งธ, @ shin- ๋น์ ์ ๊ฐ์ธ์ ์ผ๋ก ๋น์ ์ ํ๋ก์ ํธ์ ์ง์ ๊ธฐ์ฌํ์ง ์๊ณ ๋น์ ์ ์ฌ์ฉ์ ์ธ ์ฌ๋๋ค๊ณผ ๋ํํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์์ผํฉ๋๋ค. ํ๋ก์ ํธ์ ํฅํ ๊ฐ๋ฐ์ ์ดํดํ๊ณ ๋ค๋ฅธ ์๋ฃจ์ ์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๋ฐ ๋ ๋ง์ ์์์ ํฌ์ํ์ง ์์ผ๋ ค๋ ์ ์ผํ ํฌ๋ง์ผ๋ก ์ฌ๊ธฐ์์ ์์ฒญ์ ์ ์ถํ๊ณ ํ ๋ก ์ ์ฐธ์ฌํ๋ ๋ฐ ์๊ฐ์ ํฌ์ํ์ญ์์ค.
๋ท์งธ, Docker ํ์ Docker์์ ๋์ ๋ฒ๋ ค๊ณ ๋ ธ๋ ฅํ๊ณ ์์ง๋ง Docker ์์ฒด์ ๊ดํ ๊ฒ์ด ์๋๋๋ค. Docker๊ฐ ๋น์ฉ์ ์ง๋ถ ํ ์์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ ์ฒด Docker ์ธํ๋ผ๊ฐ ๋น์ฉ์ ์ง๋ถ ํ ๊ฐ์น๊ฐ ์์์ ์ฆ๋ช ํ๋ ๊ฒ์ ๋๋ค. ๊ฐ๋ฐ ํ์ด ๋๋ถ๋ถ์ ์๊ฐ ๋์ ์ปค๋ฎค๋ํฐ์ ๋ฑ์ ๋๋ฆฌ๋ฉด ์ฌ์ฉ์ ์ฑ๊ณต์ ์งํฅํ๋ ์ ํ์ธ์ง ์ ์ ์์ต๋๋ค.
๋ค์ฏ์งธ, ๋ค์ ํ ๋ฒ, ์ฐ๋ฆฌ ๋ชจ๋๋ ์ ๋ณด๋ค๋ ๋ํ๊ณผ ์น๊ตฌ์ด๋ฉฐ์ด ๋ชจ๋ ๊ฒ์ ๋์ ๋๋ฆฌ๊ธฐ ์ํด ์ ๋ง ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๋น์ ์ ์น๊ตฌ์ด๊ธฐ ๋๋ฌธ์ ๋์ปค ์คํ์์ ํ์ถํ๋ ๊ฒ์ ๊ณ ํต ์ค๋ฌ์ธ ๊ฒ์ด์ง๋ง, ์ด์ ๋ ๊ทธ ์๋ณ์ด ์ ํ ๋นํ์ค์ ์ผ๋ก ๋ณด์ด์ง ์์ต๋๋ค.
์ด๊ฒ์ ์ฃผ์ ๋ฒ์ ์ ๊นจ๋ ๋ณ๊ฒฝ์ ๋์ฐํ ๊ตฌํ์ด๋ฉฐ, ์ฐ๋ฆฌ์ ํ๋ ์ ์ํฌ๋ฅผ ๋ฐฐํฌํ๋ ๋ฅ๋ ฅ์ ์์ ํ ๋ง๊ฐ ๋จ๋ฆฌ๊ณ , ์ฌ์ ๊ฒฝ๊ณ ๊ฐ ์ ํ์์ด ๋์ผํ ๋ฌธ์ ๋ฅผ ์ผ๋ง๋ ๋ง์ ์ฌ๋๋ค์ด ๊ฒฝํํ๊ฒ ๋ ์ง ์์์กฐ์ฐจ ํ ์ ์์ต๋๋ค. ๋๊ตฐ๊ฐ๊ฐ ์๋์ผ๋ก docker์ ์ต์ ๋ณ๊ฒฝ ๋ก๊ทธ๋ฅผ ์ฐพ์ง ์๋ ํ, ๊ทธ๋ค์ ์ด๊ฒ์ ๋ํด ์ ํ ๋ชจ๋ฅด๊ณ ๋๋ถ๋ถ์ ์ฌ๋๋ค์ด ๊ทธ๋ ๊ฒํ์ง ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํฉ๋๋ค.
@ shin-์ด ๋ณ๊ฒฝ์ ๊ธฐ์กด ์ํฌ ํ๋ก๋ฅผ ๋งค์ฐ ๋ฐฉํดํ๋ฉฐ ์ฌ๋ฌ๊ทธ๋ฅผ ์์ฑํ์ง ์๋๋ก ์ ๊ณต๋๋ ํ๋๊ทธ๊ฐ ์์ด์ผํฉ๋๋ค. ์์ฒ ์๊ฐ์ ๊ฐ๋ฐ ์๊ฐ์ด docker-compose์ ์์ธก ๊ฐ๋ฅ์ฑ์ ์์กดํ๋ ์คํฌ๋ฆฝํธ ์์ฑ ๋ฐ ์๋น์ค ์๋ํ์ ์์๋์์ต๋๋ค. ์ ์ ํ ์๋น์ค ๊ฒ์์์ด ๊ฐ๋ณ ์ปจํ ์ด๋์ ์๋ ํ๊ฒํ ์ ํ์ฉํ๊ธฐ์ํ ํ์ ๊ณํ์ ๋ฌด์์ ๋๊น?
docker-compose
container_name
์ง์๋ฌธ์ ์ฌ์ฉํ๋ ค๊ณ ํ์ง๋ง GitLab์ ์ ์ฉ๋์ง ์์์ต๋๋ค.
๊ทธ๋ฌ๋ Mac Os Mojave์ ์ต์ ๋ฒ์ docker-compose
์์ ์๋ํ๋ ๊ฒ ๊ฐ์ต๋๋ค. ๋ฌด์จ ์ผ์ด ์ผ์ด๋๊ณ ์๋์ง ํ์คํ์ง ์์ต๋๋ค. :)
๋ด .gitlabci.yml
ํ์ผ์ด tmaier
์์ ๋ง์ง๋ง ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ์์ต๋๋ค (1.23.1์ด์ด์ผ ํจ).
์๋ ํ์ธ์, ์ฌ๊ธฐ์ ํํ ๋ ๋ช ๊ฐ์ง ์ฐ๋ ค ์ฌํญ์ ํด๊ฒฐํ๊ธฐ๋ฅผ ๋ฐ๋ผ๋ ๋ช ๊ฐ์ง ์ผ๋ฐ์ ์ธ ์๊ฒฌ์ ๋๋ค.
docker-compose run
๋ฌธ์ ๋ ์ฌ๊ธฐ์์ ์ฌ๋ฌ ๋ฒ๋ณด๊ณ ๋์์ต๋๋ค. # 4688 # 4549 # 5240volumes_from
๋ฐ external_links
์ฌ์ฉ์ด ๋ ์ด๋ ค์ ์ง๋ค๊ณ ์๊ฐํฉ๋๋ค. ์ด ๋ณ๊ฒฝ ์ด์ ์๋ Compose๊ฐ ์ฃผ์ด์ง ์ปจํ
์ด๋ ์ด๋ฆ (์ : # 6155 ๋๋ # 3415์ ์ธ๊ธ ๋ ์ ๋์ฌ ์ฐธ์กฐ)์ ๋ํด "์์ ๋"ํ์์ ์กด์คํ๋ค๋ ๋ณด์ฅ์ด ์์๊ธฐ ๋๋ฌธ์ ์คํํ๊ธฐ ์ฌ์ด ๊ฒฐํจ์ด์๋ ์๋ฃจ์
์ด๋ฉ๋๋ค. ์ฅ๊ธฐ์ ์ผ๋ก ๋ชจํธํ ๋ฌธ์ ๋ก.external
๋คํธ์ํฌ๋ฅผ ๊ณต์ ํ๊ณ ๋ค๋ฅธ ์๋น์ค์ ๋ณ์นญ์ ์ฌ์ฉํ๋ ๊ฒ์
๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ํ๋ก์ ํธ ์ ์ฒด์์ volumes_from
๋์ external
๋ช
๋ช
๋ ๋ณผ๋ฅจ์ ํ์ฉํด์ผํฉ๋๋ค.์ฌ๊ธฐ์ ํด๊ฒฐ๋์ง ์์ ์ฌํญ์ด ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์. ์ ๋ ์ด๊ฒ์ด ๋ง์ ๋ถ๋ค์๊ฒ ์ค๋ํ ๊ณผ์ ์ถฉ๋์ด๋ฉฐ ์์์น ๋ชปํ ์ํฉ์ ์ฒ๋ฆฌ ํ ๋ ํ๋ฅผ ๋ผ ์ ์์์ ์ดํดํฉ๋๋ค. ์ ๊ทธ๋ ์ด๋๋ฅผ ์งํํ๋ ๋ฐ ํ์ํ ์๊ฐ์ ๊ฐ๊ณ ๋น๋ถ๊ฐ Compose ๋ฒ์ ์ ๊ณ ์ ํ์ญ์์ค. "์์ธก ๊ฐ๋ฅํ ์ด๋ฆ์์ด XYZ๋ฅผ ์ํํ๋ ค๋ฉด ์ด๋ป๊ฒํด์ผํฉ๋๊น?"์ ๊ฐ์ ์ง๋ฌธ์ ๋ํด ๊ธฐ๊บผ์ด ๋์ ๋๋ฆฌ๊ฒ ์ต๋๋ค. ๊ทธ๋๊น์ง๋์ด ์ค๋ ๋ ๋๋ Slack์์. ๊ทธ๋ฆฌ๊ณ ์ด๋ฌํ ํฌ๋ผ์์ ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ์ํธ ์์ฉํ๋ ๋ฐฉ์์ ๋ํด ๋ฐฐ๋ คํ๊ณ ๊ณต์ ํ๋ ์ ๋ณด๊ฐ ์ฌ๋ฐ๋ฅธ์ง ๋ค์ ํ์ธํ์ญ์์ค (์ด ๋ณ๊ฒฝ ์ฌํญ๊ณผ ๊ด๋ จ์ด์๋ ๋ช ๊ฐ์ ์ค๋ ๋๊ฐ ์ธ๊ธ๋๊ฑฐ๋ ๋ฆฌ๋๋ ์ ๋๋ ๊ฒ์ ์ด๋ฏธ ๋ณด์์ต๋๋ค. , ๋ถํ์ํ ๊ฒฝ๊ฐ์ฌ์ ๋ถ๋ฌ ์ผ์ผํค๊ณ ์ฌ๊ธฐ๋ก ์คํด๋๋ ๋ฌธ์ ๋ฅผ ๊ฐ์ง ์ฌ๋๋ค์ ๋์ง ์์ต๋๋ค.) ๋ํ๋ฅผ ๋ฐฉํดํ์ง ๋ง์ญ์์ค. ์๊ฐ๊ณผ ์ธ๋ด์ฌ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
์ปค๋ฎค๋์ผ์ด์ ๋ถ๋ถ์์๋ ์ด์ ๊ฐ์ ๋ณ๊ฒฝ์ด ์ฌ์ ์ ์ปค๋ฎค๋์ผ์ด์ ์ฑ๋์ ํตํด ์ ๋ฌ๋๊ณ ์ค๋ช ๋๊ธฐ๋ฅผ ๊ธฐ๋ํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก์ด ์ค๋ ๋์์ ๋ฐฉ๊ธ ์ํ ํ ๋ฐฉ์์ผ๋ก ์ด์ ์ ์ง๊ธํด์ผ ํ ์ผ์ ์ค๋ช ํ์ง๋ง ์ด์ ์ ์ํ ํ ๋ฐฉ์์ผ๋ก ๋ชจ๋ ์ฌํ.
@ shin- ๋ด๊ฐ ์ ๊ณต ํ ๋ง์ง๋ง ๋๊ธ๊ณผ ๋งํฌ๋ฅผ ์ฝ์ง ์์์ต๋๊น?
๋ง์ง๋ง ์ฌ๋์ ์น์ ํด ๋ณด์ด์ง๋ง ๋๊ฐ์ ๋๋์ ๋๋ค.
์ด ๋ณ๊ฒฝ ์ฌํญ์ด ์ด๋ป๊ฒ ๋ ์ ์ ๋ฌ ๋ ์ ์์๋์ง์ ๋ํ ์ ์์ ๊ด์ฌ์ด ์์ต๋๋ค.
TL; DR
docker-compose.yml
์ ์๋ก์ด version
์๊ฐexternal_links
DeprecationWarning
๋ฅผ ์ถ๊ฐํฉ๋๋ค.์ฐธ๊ณ ๋ก, ๋ณ๊ฒฝ ์ฌํญ์ ๋ฆด๋ฆฌ์ค ๋ ธํธ์์ ์ธ๊ธ๋์์ต๋๋ค.
๋ณ๊ฒฝ ๋ก๊ทธ๋ ๊ธฐ์ฌ์์๊ฒ ์ค์ํฉ๋๋ค. ์ฌ์ฉ์๋ ๊ทธ๊ฒ์ ์ฝ์ง ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ docker-compose
ํ๊ณ ์ด์ ์ดํ์๋ ์๋ํ๊ธฐ๋ฅผ๊ธฐ๋ํฉ๋๋ค.
๋ฐ๋๋ก, ์ฌ๊ธฐ์ ์ผ๋ฐ์ ์ธ ์์ ์ด "์ ๋ ๋ณ๊ฒฝํ์ง ๋ง์ญ์์ค. ์๋๋ฉด ๋ชจ๋ ํญ๋ชฉ์ ๋ฌด๊ธฐํ ์ตํธ ์์ํ๋๋ก ๋๋์ญ์์ค"๋ผ๋ฉด ๋๋ถ๋ถ์ ์ฌ๋๋ค์ ์ด๊ฒ์ด ๊ฑด๊ฐํ๊ณ ํฉ๋ฆฌ์ ์ธ ๋ฐฉ๋ฒ์ด ์๋๋ผ๋ ๊ฒ์ ์๊ณ ๊ณ์ค ๊ฒ์ ๋๋ค. ๋ค์ํ Docker Engine ๋ฒ์ , Compose ํ์ผ ํ์ ๋ฐ ๋ ์ด์ ์ฌ์ฉ๋์ง ์๋ ๊ด์ฉ๊ตฌ์์ ์ด์ ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํ๊ธฐ ์ํด ์ด๋ฏธ ๋ง์ ๋ฌธ์ ๋ฅผ ๊ฒช๊ณ ์๋ Compose ํฌ๊ธฐ๋ก ์ํํธ์จ์ด ํ๋ก์ ํธ๋ฅผ ์ ์งํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์ค๋ช ํฉ๋๋ค.
์ข์ ์์์ด ์์ต๋๋ค. ๋น์ ์ ์ด๋ฏธ "์ด๋ค ์ค์ํ ๋ณ๊ฒฝ๋ํ์ง ๋ง์ญ์์ค. ์๋๋ฉด ๋ชจ๋ ๊ฒ์ ๋ฌด๊ธฐํ ์ตํธ ์์ํ๋๋ก ๋๋์ญ์์ค"๋ผ๊ณ ์ด๋ฏธ ๋ณด์ฅํ์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ๋ ๋ง์ ๊ธฐ๋ฅ์ด ์์ต๋๋ค. docker-compose.yml
ํ์ผ์ version
์
๋๋ค. ๋ฐ๋ผ์์ด ๋ณ๊ฒฝ ์ฌํญ์ ์ต๋ํ ๋นจ๋ฆฌ ๋๋๋ฆฌ๊ณ ๋ค์ version
๋ฒํธ์ ๋์
ํ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค.
"์์ธก ๊ฐ๋ฅํ ์ด๋ฆ์์ด XYZ๋ฅผ ์ํํ๋ ค๋ฉด ์ด๋ป๊ฒํด์ผํฉ๋๊น?"์ ๊ฐ์ ์ง๋ฌธ์ ๋ํด ๊ธฐ๊บผ์ด ๋์ ๋๋ฆฌ๊ฒ ์ต๋๋ค. ๊ทธ๋๊น์ง๋์ด ์ค๋ ๋ ๋๋ Slack์์.
์ด ์ค๋ ๋์ ๋ค๋ฅธ docker-compose.yml
์์ external_links
๋ฐ container_name
์ ์๋์ง ์์ ์ธ๋ถ ๋ณผ๋ฅจ์ ๋ํ ์๋ฃจ์
์ ์ ๊ณตํ์ญ์์ค (ํญ์ ์๋ํ์ง๋ ์์).
์ด๊ฒ์ ์ฌ์ฉ์๊ฐ ํ๋ก์ ํธ๋ฅผ ์ฌ์ฉํ๋ ์ธ๊ธฐ์๋ ๋ฐฉ๋ฒ์
๋๋ค. ๋๋ถ๋ถ์ ์ฌ์ฉ์๋ ๋ก์ปฌ ๊ฐ๋ฐ์ ์ํด docker-compose๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ข
์ข
ํ๋๋ ๊ฐ๋ฐ์ค์ธ ์ฌ๋ฌ ์ํธ ์ฐ๊ฒฐ๋ ํ๋ก์ ํธ๋ฅผ ๊ฐ์ง๊ณ ์์ต๋๋ค. ์ด๋ฌํ ๊ฒฝ์ฐ ์ฌ๋ฌ ๊ฐ์ ๋์ปค ๊ตฌ์ฑ ํ์ผ์ ๋์ผํ ๋คํธ์ํฌ๋ก ์ง์ ํ๊ณ ๋ค๋ฅธ ํ๋ก์ ํธ์ ์๋น์ค๊ฐ ๊ฐ๋ฐ์์ ์ปดํจํฐ์์ ์๋ก ๋๋ฌ ํ ์ ์๋๋ก external_links
๋ฅผ ์ ์ํ๋ ๊ฒ์ด ์ผ๋ฐ์ ์
๋๋ค.
๋ํ๋ฅผ ๋ฐฉํดํ์ง ๋ง์ญ์์ค
@ shin- ์ง๊ธ๊น์ง ์ฝ์ ๋ชจ๋ ๋ํ๋ ์ฌ๋๋ค์ด ๊ฐ์ง ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ์๋ฌด๊ฒ๋ํ์ง ์๊ธฐ ๋๋ฌธ์ ํ์ ๋ฉ๋๋ค.
์ง์งํ๊ฒ, ์ด๋ฌํ ํ๋๋ก ์ฌ์ฉ์์ ์์ฒญ์ ๋์์์ด ๊ฑฐ๋ถํ๊ณ ์ด ํ๋ก์ ํธ๋ฅผ ๋ค๋ฅธ ์ฌ๋์๊ฒ ๋ ์ ์ ๋ฌํ๋ ๊ฒ์ ํผํ ์์์ ๋ ์ปค๋ฎค๋ํฐ ํฌ์์ ๊ฐ์ํฉ๋๋ค.
์ถ์ : ๋ค๋ฅธ "์ฃผ์ ์์ ๋ฒ์ด๋"์ฝ๋ฉํธ์ ๋ํด ์ฃ์กํฉ๋๋ค. ๋น์ ๋ ์ต์ํ๋ฏ๋ก์ด ๋ฌธ์ ๋ฅผ ์ ๊ทธ์ญ์์ค.
์ด ์ค๋ ๋์ ๋ค๋ฅธ docker-compose.yml์์ container_name์ด ์ ์๋์ง ์์ ์ธ๋ถ ๋งํฌ ๋ฐ ์ธ๋ถ ๋ณผ๋ฅจ์ ๋ํ ์๋ฃจ์ ์ ์ ๊ณตํ์ญ์์ค (ํญ์ ์๋ํ์ง๋ ์์).
์ด๋ฏธ ๊ทธ๋ฌ์ต๋๋ค. ์ด์ ์๊ฒฌ์ ์ฐธ์กฐํ์ญ์์ค.
์๋ก ๋ค๋ฅธ ํ๋ก์ ํธ์ ์ปจํ ์ด๋๊ฐ ํต์ ํ๋๋ก ํ์ฉํ๋ ๊ถ์ฅ ๋ฐฉ๋ฒ์
external
๋คํธ์ํฌ๋ฅผ ๊ณต์ ํ๊ณ ๋ค๋ฅธ ์๋น์ค์ ๋ณ์นญ์ ์ฌ์ฉํ๋ ๊ฒ์ ๋๋ค. ๋ง์ฐฌ๊ฐ์ง๋ก ํ๋ก์ ํธ ์ ์ฒด์์volumes_from
๋์external
๋ช ๋ช ๋ ๋ณผ๋ฅจ์ ํ์ฉํด์ผํฉ๋๋ค.
๋๋จธ์ง ๊ฒ์๋ฌผ์ ๋ถํ์ํ๊ฒ ์ ๋์ ์ด๋ฏ๋ก ์๋ตํ์ง ์์ต๋๋ค. ๋๋ ์ฌ๊ธฐ ์๊ณ ํ ๋ก ์ ํ ์ํฅ์ด ์์ง๋ง ๋น์ ์ ๊ดด๋กญํ์ ๋ฐ์ ๋ค์ผ ํ์๋ ์์ต๋๋ค.
์์งํ @ shin-
์ด ๋ณ๊ฒฝ ์ฌํญ์ด ์ด๋ป๊ฒ ๋ ์ ์ ๋ฌ ๋ ์ ์์๋์ง์ ๋ํ ์ ์์ ๊ด์ฌ์ด ์์ต๋๋ค.
๋๋ ๋น์ ์ด "๊ด์ฌ"์ด์๋ ๊ฒ ๊ฐ์ง ์์ต๋๋ค. ์์ฑ ํ์ผ์ ์์ฑํ๊ณ "์คํธ"(์์)์ผ๋ก ํ์ํ๊ธฐ ์ ์ ์ด๋ฏธ์ง๋ฅผ ๊ฐ์ ธ ์ค๋ ๊ฒ์ ๋ํ ํฐ์ผ์ ๋ซ์ผ๋ฉด ์ปค๋ฎค๋ํฐ์์ ์ ์ํ๋ ๋ด์ฉ์ ํ์คํ ๊ด์ฌ์ด ์์์ ์ ์ ์์ต๋๋ค. ๋ฌด์์ ์ด๋ฃจ๊ณ ์ถ์์ง ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง ์ปค๋ฎค๋ํฐ์์ ๊ด๊ณ๋ฅผ ์ ์งํ๋ ๊ฒ์ ๋ค๋ฅธ ์ฌ๋์ดํด์ผํ๋ค๊ณ ์๊ฐํฉ๋๋ค.
๋๋ ์ฌ๊ธฐ ์๊ณ ํ ๋ก ํ ์ํฅ์ด ์์ต๋๋ค
์ฐ๋ฆฌ๊ฐ ์์ํ ๊ณต๋ ์ ์ฃผ์ฅ์ ์ ๊ณตํ๋๋ผ๋ ๋ฌด์ํ๋ฉด๋ฉ๋๋ค. ๊ทธ๋ผ ์ ๊ท์ฐฎ๊ฒ?
์ถ์ . ์ด๊ฒ์ ์ฃผ์ ์์ ๋ฒ์ด๋ ๊ฒ์ผ๋ก ํ์ํ๊ณ ๊ณ์ํด์ ์ฐ๋ฆฌ์ ์๊ฒฌ์ ์กด์คํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ฃผ์ญ์์ค. ์๋ก ๋ค๋ฅธ ์๊ฒฌ์ ๋ํด ๋๋ฌด ๋ง์ ์ฐฌ์ฑ ํฌํ๋ฅผ ๋ณด๋ ๊ฒ์ด ์ํ์?
์ด๋ฏธ ๊ทธ๋ฌ์ต๋๋ค. ์ด์ ์๊ฒฌ์ ์ฐธ์กฐํ์ญ์์ค.
์๋ํ๋ ์ํ ์๋ฃจ์ ์ด ๋ณด์ด์ง ์์ต๋๋ค. ์ฃ์กํฉ๋๋ค.
๋๋จธ์ง ๊ฒ์๋ฌผ์ ๋ถํ์ํ๊ฒ ์ ๋์ ์ด๋ฏ๋ก ์๋ตํ์ง ์์ต๋๋ค. ๋๋ ์ฌ๊ธฐ ์๊ณ ํ ๋ก ์ ํ ์ํฅ์ด ์์ง๋ง ๋น์ ์ ๊ดด๋กญํ์ ๋ฐ์ ๋ค์ผ ํ์๋ ์์ต๋๋ค.
์ฃ์กํฉ๋๋ค. ๊ทธ๋ฐ ๊ธฐ๋ถ์ด ๋ ๋ค๋ฉด. ํ์ฌ docker compose ํ์ผ ๋ฒ์ ์ ๋ํ ์ด์ ๋์์ ์ง์ํ๋ ๊ฒ์ ๊ณ ๋ คํ๊ณ ์๋ก์ด ๋ฐฉ์์ผ๋ก ๋์ ํ ์๋ก์ด ํ์ ๋ฒ์ ์ ๋์ ํ์ญ์์ค. ์ด๊ฒ์ ์ฌ์ฉ์์ธต์ ์ข์ ์๋ฃจ์ ์ ์ ๊ณต ํ ์์๋ ์ ์ผํ ์ต์ ์ ๋๋ค.
๋ถ๋. ๋ด๊ฐ ๋น์ ์ ๋ง์์ ํ๋ก์ ํธ๋ฅผ ๊ธฐ๊บผ์ด ๋๊ฒ ๋ค๋ ์๊ฐ์ผ๋ก์ด ๋ ๊ฐ์ ๋ด ์๊ฒฌ์ ๋ค์ ์ฝ๋ ๊ฒ์ ๊ณ ๋ คํ์ญ์์ค.
Re the communication : ์ฐ๋ฆฌ๋ Mac ์ฉ Docker๋ฅผ ํตํด ์ ๋ฐ์ดํธ๋ฅผ ๋ฐ์๋๋ฐ,์ด ๋ณ๊ฒฝ ์ฌํญ์ ์ง์ ํ๋ ์ด๋ค ์ข ๋ฅ์ ๋ณ๊ฒฝ ๋ก๊ทธ๋ ํ์๋์ง ์๋ ๊ฒ ๊ฐ์์ผ๋ฏ๋ก ํ๊ฒฝ ๋ณ์๊ฐ ๋ณ๊ฒฝ๋ ์ด์ ๋ฅผ ํ์ ํ๋ ๋ฐ ์๊ฐ์ด ์กฐ๊ธ ๊ฑธ๋ ธ์ต๋๋ค.
์ผ๋จ ๋๋ ์ด๊ฒ์ v1์์ v3์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ๊ณ ํ๊ฒฝ ๋ณ์ ๋์ ์๋น์ค ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ์ฐ๊ฒฐํ๋ ๊ธฐํ๋ก ์ผ์์ง๋ง ์ค์ ๋ก๋ ํจ์ฌ ๋ ๊น๋ํ๊ฒ ๋ง๋ค์์ต๋๋ค ๐
FWIW, compose์ ์ํด ์์ฑ ๋ ์ปจํ ์ด๋์์ exec์ ๋ํ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋๋ ํดํน :
docker container exec -it $(docker container ls -f name=expected -q) cmd
์ด ์ฌ์ค์ ์์์ ๋ ๊ตฌ์ฑ์ v1์์ v3์ผ๋ก ์ ๊ทธ๋ ์ด๋ํ๊ณ ํ๊ฒฝ ๋ณ์ ๋์ ์๋น์ค ์ด๋ฆ์ ์ฌ์ฉํ์ฌ ์ฐ๊ฒฐํ๋ ๊ธฐํ๋ก ์ผ์๊ณ ์ค์ ๋ก ํจ์ฌ ๋ ๊น๋ํ๊ฒ ๋ง๋ค์์ต๋๋ค.
๋ค๋ฅธ docker-compose ํ์ผ ์ ๊ทผ ๋ฐฉ์์ ์ฐ๊ฒฐํ๋ ์๋น์ค ์ด๋ฆ์ ๋ํ ๊ฐ๋จํ ์๋ฅผ ์ฌ๊ธฐ์ ์ ๊ณตํด ์ฃผ์๊ฒ ์ต๋๊น?
docker container exec -it $(docker container ls -f name=expected -q) cmd
์ด๊ฒ์ docker-compose์ ๊ด๋ จ์ด ์์ต๋๋ค.
@lig ์ด๊ฒ์ docker-compose์ ์ํด ์์ฑ ๋ expected
์ด๋ฆ์ ๋ณ๊ฒฝ์ ์ค์ฌ์ผ๋ก ์๋ํฉ๋๋ค. ์ด ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ช
๋ช
์ฒด๊ณ๋ฅผ ๋ณ๊ฒฝํ์ง ์์ ๊ฒฝ์ฐ ์กด์ฌํ์ง ์์ต๋๋ค.
@joebowbeer ์ด ๋ณ๊ฒฝ ํ ์ฃผ์ ๋ฌธ์ ๋ docker-compose ํ์ผ์ ์ฐ๊ฒฐํ๋ ๊ฒ์ ๋๋ค. docker cmd๋ฅผ ํตํด docker-compose๊ฐ ์์ํ ์ปจํ ์ด๋๋ฅผ ์ฐพ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ด๊ฒ์ ์ฃผ์ ์ ๋ํ ์ฝ๊ฐ์ ๋์์ด๋ฉ๋๋ค.
@ shin- ๋๋ ์ฐ๋ฆฌ ๋ชจ๋๊ฐ ์ ์ฐ๋ฆฌ๊ฐ ์ค์ ๋ผ์ธ ์ปจํ ์ด๋ ์ด๋ฆ์ ์์ฑํ๊ธฐ ์ํด docker composer๊ฐ ํ์ํ์ง์ ๋ํ ์ค๋ช ์ ๊ธฐ๋ค๋ฆฌ๊ณ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ ๊ฒ๋ ์ ์ ์ํ์์๋ ๋๊ตฌ๋ ์ ์ ๋ชฉ์ ์ผ๋ก ์๊ณก๊ฐ๋ฅผ ์ฌ์ฉํ ํ์๊ฐ ์๋ค๋ ๊ฒ์ด ๋ถ๋ช ํฉ๋๋ค. Compose๋ ๋ก์ปฌ์์ ํ ์คํธ ํ ํ๋ก์ ํธ๋ฅผ ๋๋ฆฌ๋ ๊ฐ๋ ฅํ ๋๊ตฌ์ ๋๋ค. ๋ก์ปฌ ์ ์ฉ ํ ์คํธ์ ๋๋์ผ๋ก ์ฌ์ฉ๋๋ ๋๊ตฌ์ docker swarm perk / ๊ธฐ๋ฅ์ ์ ๊ณตํ๋ ๊ฒ์ด ๋งค๋ ฅ์ ์ด์ง ์์ต๋๋ค. ์ฉ๊ธฐ์ ๋ผ์ ๊ฐ์ ์ด๋ฆ์ด ํ์ํ๋ฉด ๋ผ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ๊ถ๋ฆฌ?
์ฌ๊ธฐ์ ๋ ๋ฒ์งธ ํฐ ์ง๋ฌธ์ ์ ์ด๊ฒ์ด ์ธ์๋ฅผ ํตํด ์ต์
๊ธฐ๋ฅ์ผ๋ก ํฌํจ๋์ง ์์๋๊ฐ์
๋๋ค. ๋ด ํฌ๋ผ๊ณผ ์ปค๋ฎค๋ํฐ์์์ด ๋์์ ๊ธฐ๋ณธ ๋์์ผ๋ก ํธ์ํ๋ ์ฌ๋๋ค์ด ๋ณด์ด์ง ์์ต๋๋ค. ๊ทธ๋์ ์ฐ๋ฆฌ๋ ์๋ง๋ ๊ทธ๊ฒ์ ์๋ก์ด arg : docker-compose up --slug
๋ก ๋์
ํด์ผ ํ ๊ฒ์
๋๋ค. ๊ฐ๋จํ๊ณ ์ฐ์ํ๋ฉฐ ๋๊ตฌ์ ์คํฌ๋ฆฝํธ๋ ๊นจ๋จ๋ฆฌ์ง ์์ต๋๋ค.
* On the flipside, if the general takeaway here is "don't make any breaking change ever, or let me opt out of all of them indefinitely", I'm sure most of you realize that it's not a healthy, reasonable way to go about maintaining a software project the size of Compose, which already jumps through a lot of hoops to maintain backward-compatibility with a wide array of Docker Engine versions, Compose file formats, and deprecated idioms.
๊ณผ๊ฑฐ์๋ ์ํฐํ๋ผ์ด์ฆ์์ ์์ ํ ๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํด "๋ ๊ฐ์ง ์ฃผ์ ๋ฒ์ "๊ท์น์ ์ฌ์ฉํ๋ ๊ฒฝํฅ์ด์์์ต๋๋ค. ํ๋๋ ์ง์ ์ค๋จํ๊ณ ๋ค์์๋ ์ ๊ฑฐํ๋ ๋ฐฉ์์ด์์ต๋๋ค. ์ด๋ป๊ฒ ์ด๊ฒ์ด ์ตํธ ์ธ์ด ๋ ์ ์์๋์ง ์ ๋ชจ๋ฅด๊ฒ ์ง๋ง, _ ์์ _ ์ตํธ ์์์ ์ ๋ง ๊ฐ์ฌํ์ ๊ฒ์ ๋๋ค.
Docker-compose์๋ ์ฃผ ๋ฒ์ ์ ๊ฐ๋ ์ด์๋ ๊ฒ ๊ฐ์ง๋ง ์ผ์์ ์ธ "disable this"์ต์ (๋ช ๋ น ์ค์์๋ ์์ฑ ํ์ผ์์๋ )์ด ํ๋ ๋๋ ๋ ๊ฐ์ ๋ฆด๋ฆฌ์ค (1.23 ๋ฐ ๊ฐ๋ฅํ๋ฉด 1.24) "๋ฌด๊ธฐํ"์ ๊ตฌ์ฑํฉ๋๋ค.
์ด๊ฒ์ด ๋น ๋ฆฌ๋ ์ค ์ฌ์ฉ์๋ฅผ์ํ ์๋ ์ ๋ฐ์ดํธ์ ๊ด๋ จ์ด์๋ ๊ฒ ๊ฐ๋ค๋ ์ ์ ๊ฐ์ํ ๋, ๋ง์ ์ฌ๋๋ค์ด ๋๋๊ณ , ๋๋จธ์ง ๋ถ๊ธฐ ๋์ "์คํฌ๋ฆฝํ ์ ์ ๋ฐ์ดํธํ๋ ๋์์ด ๋ช ๋ น ์ค ํ๋๊ทธ๋ก ์คํ"ํ๋ ๋์ ์ ๋ง์ ์ฌ๋๋ค์ด ๋๋์ต๋๋ค. ์คํฌ๋ฆฝํธ๋ฅผ ์ ๋ฐ์ดํธํ๊ธฐ ์ํด ์๋์ผ๋ก ๋ค์ด ๊ทธ๋ ์ด๋ ๋ฐ / ๋๋ ์ํ์ค์ธ ์์ ์ ์ญ์ ํด์ผํ๋ ์๋ง์ ๊ฐ๋ฐ์๊ฐ ์์ต๋๋ค.
์ด ์ค๋ํ ๋ณํ๋ ์ฌ์์ ๋๋ค. ๊ฐ์๊ธฐ ๋ง์ ์๋ ๋ฐฐํฌ๊ฐ ์ค๋จ๋์์ต๋๋ค. ๋ค์๋ ๊ทธ๋ฌ์ง ๋ง์ธ์.
* Introduce the new `version` of the `docker-compose.yml` * Add `DeprecationWarning` for `external_links` with a link to a document which describes the update and provides a sample solution for those willing to migrate. * Support the old behavior for all compose file format versions prior the new one.
๋๋ฌด ๋ง์ด ๋๋ค์ ... ์ ์ด๋ฐ ์์ผ๋กํ์ง ์์๋์ง ๋ชจ๋ฅด๊ฒ ์ด์.
๋๋ ์ฌ๊ธฐ ์๊ณ ํ ๋ก ์ ํ ์ํฅ์ด ์์ง๋ง ๋น์ ์ ๊ดด๋กญํ์ ๋ฐ์ ๋ค์ผ ํ์๋ ์์ต๋๋ค.
@ shin- ์ ์๋ ํฉ๋ฆฌ์ ์ธ ์ ์์ ๊ณ ๋ คํ์ง ์๊ธฐ ๋๋ฌธ์ ์ฌ๊ธฐ์ ํ ๋ก ์ด ์๋ค๋ ๊ฒ์ด ๋ถ๋ช ํฉ๋๋ค. ๋ํ ๋๊ตฐ๊ฐ๊ฐ ๊ดด๋กญํ์๋นํ๋ ๊ฒฝ์ฐ-๋น์ ์-์ด ์ค๋ํ ๋ณํ๋ก ์ ์ธ๊ณ์ ์๋ง์ ๊ฐ๋ฐ์๋ฅผ ํจ๊ณผ์ ์ผ๋ก ๊ดด๋กญํ๋ ๊ฒ์ ๋๋ค.
๋ง์ ์ฌ๋๋ค (๋์ ๋ค๋ฅธ ์ฌ๋)์ ๋ผ ๋ชจ๋์ compose๋ฅผ ์ฌ์ฉํ์ง ์์ต๋๋ค. ๋๋ ๊ณผ๊ฑฐ์ ์ปด ํฌ์ฆ ํ์ผ์ด ๋ผ์ ๋ํ ์๋น์ค๋ฅผ ์ ์ํ๋ ๋ฐ ์ฌ์ฉ๋๋ ๊ฐ์ ์ด์๋ ๋ฌธ์ ๋ก ์ธํด ๋ด compose ํ์ผ์ ๋ํด ๋ฎ์ ๋ฒ์ ์ ์ง์ ํฉ๋๋ค. ๋ด๊ฐ ์ง์ ํ ๋ฒ์ ์ด ๋ด ๋์ปค ๋ ธ๋์์ ์์ฑ ๋ ๊ฒฐ๊ณผ์ ์ฐ๊ฒฐ๋์ด ์๊ณ ๋ฒ์ ์ ๋ฎ์ ์์ค์ผ๋ก ์ ๊ทธ๋ฉด ์ผ๊ด์ฑ์๋ ๊ฒฐ๊ณผ๋ฅผ ์ป์ ์ ์๊ณ ๋์ปค ๋ฒ์ ๊ณผ์ ํธํ์ฑ์ ์ ์งํ๊ธฐ ์ํด ๊ตฌ์ฑํ๋ ์ ๋ฐ์ดํธ๋ฅผ ์ํ ํ ์ ์๋ค๊ณ ์๊ฐํ์ต๋๋ค. ๋๋ ๋ฐ๊ณ ์์ด. ๋ถ๋ช ํ ์ฌ๊ธฐ์์ ์ ์ ํ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ๊ธฐ๋ํ ์ ์์ต๋๋ค.
๊ทธ๋ค์ด ๊ฐ์๊ธฐ ์ฐ๋ฆฌ ๋ฌผ๊ฑด์ ๋ถ์ ์ง ์๋๋ก docker-compose๋ฅผ ๊ณ ์ ์ํฌ ์ ์์ต๋๊น?
๊ฐ์ฅ ์ข์ ํด๊ฒฐ์ฑ ์ ์ปจํ ์ด๋ ์ด๋ฆ์ ์ฌ๋ฌ๊ทธ ๋ถ๋ถ์ ์ถ๊ฐํ๋ ๊ฒ์ด ๋นํ์ฑํ ๋ ์์๋ docker-compose.yml ํ์ผ์ ์๋ก์ด ๊ตฌ์ฑ ์ต์ ์ ๋์ ํ๋ ๊ฒ์ ๋๋ค.
s / ๋นํ์ฑํ / ํ์ฑํ /. ์ต์ํ ๊ธฐ์กด ์์ฑ ํ์ผ ๋ฒ์ ์์.
์ด ๋์์ ์์ฑ ํ์ผ์ ๋ฒ์ ๋ฒํธ์ ์ฐ๊ฒฐํด์ผํฉ๋๋ค. ์ด ๋์์ด "์ง์ "๋์๋์ง ์ฌ๋ถ์ ๊ด๊ณ์์ด ๋งค์ฐ ๋๋ฆฌ ์ฌ์ฉ๋๋ฏ๋ก ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์
๋๋ค. ๋ฐ์ด๋๋ฆฌ๋ฅผ ์
๊ทธ๋ ์ด๋ ํ ๋ compose ํ์ผ์ด ๋์ผํ ๋ฐฉ์์ผ๋ก ์๋ํ๋ ๊ฒ์ด ๋ณด์ฅ๋์ง ์๋๋ฐ ์ ๊ทธ ์์ ์์ ์ฌ์์ ๋ฒ์ ํํฉ๋๊น? compose ํ์ผ ์ฌ์์ ๋น์ถ์ฒ (๋ฌผ๋ก docker-compose
์ด ์คํ๋ ๋ ๋ง์ ๊ฒฝ๊ณ ๊ฐ ํ์๋จ)ํ๊ณ ์ ๊ฑฐํ๋ฉด ๋ด ๋ชจ๋ ํญ๋ชฉ์ด ๋ ์ด์ ์๋ํ์ง ์์ง๋ง ๋ฆด๋ฆฌ์ค๋ฅผ ์ฝ์ ๊ฒ์ผ๋ก ์์๋ฉ๋๋ค. ๋ด ์ผ๊ตด์ ๊ฒฝ๊ณ ๋ฉ์์ง๋ฅผ ์ธ์ ํ ์์๋ ๊ถํ์ด์๋ ํ๋ก๊ทธ๋จ์ ๋ํ ๋ฉ๋ชจ?
์ด์ ๊ฐ์ด ๋ณ๊ฒฝํ๋ ๊ฒ์ ํ์ ์ธ์๋ ์ฌ์์ ๋์์ ๋ฒ์ ํํ๋ ๋ฐ ๋งค์ฐ ์ข์ ๋๊ธฐ๋ก ๋ณด์ ๋๋ค. ๊ฒฝ๊ณ ์ ํจ๊ป ๋ค๋ฅธ ์ฌ๋์ ์ฝ๋ ๊ฐ์ ์ ๋น๋ ํ ์ ์์ต๋๋ค. ์ด ๋ฌธ์ ์ ์ด๋ฆ์ ์ฌ๋ฆฐ ์ธ๋ถ ๋ฌธ์ ์ ์์ ์ด๊ฒ์ด ๋ง์ ์ฌ๋๋ค์๊ฒ ์ผ๋ง๋ ๋๋ผ์ด ์ผ์ธ์ง๋ฅผ ๋งํด์ค๋๋ค. ์ฝ๋๊ฐ ๋ณต์กํด์ง์ง ์๋๋ก ๋ ๊ฑฐ์ ๋์์ด ๊นจ์ง๋ ๊ฒ์ ๋ณด๋ ๊ฒ์ ์ ๋ง ๋๋จํ์ง๋ง ์ด์ ๊ฐ์ ๋ณ๊ฒฝ ์ฌํญ์ ํ ๋ฒ์ ๋ชจ๋ ์ ์ฉ ํ ์ ์์ต๋๋ค. ์ปจํ ์ด๋ ์ด๋ฆ ์์ฑ์ ๋ํ ๋ค๋ฅธ ๊ฐ์ ์ด ๊นจ์ง ๊ฒ์ผ๋ก ์์ ํ ์ ์์ต๋๊น? ์๋น์ค ์ด๋ฆ์ด ํญ์ ์ปจํ ์ด๋ ์ด๋ฆ์ ํฌํจ๋ฉ๋๊น? ์๋๋ฉด ์์ธก ๊ฐ๋ฅํ ์ด๋ฆ์ฒ๋ผ ์ ๊ฑฐ ํ ์ ์์ต๋๊น?
์ด๊ฒ์ ์ผ๊ด์ฑ์๋ ๋คํธ์ํฌ ์ฅ์น ์ด๋ฆ ์ง์ ์ด Linux์์ ๋๋ฆฌ ์ฑํ๋์์ ๋๋ฅผ ์๊ฐ ๋๊ฒํฉ๋๋ค (๊ทธ๋ฌ๋ ์ด๊ฒ์ wrt ์ด๋ฆ ์ง์ ... idk์ ๋ฐ๋์
๋๋ค). ๋ง์ ์ฝ๋๊ฐ ethN ์ฉ์ผ๋ก ํ๋ ์ฝ๋ฉ๋์์ผ๋ฉฐ (์ฌ์ ํ ๋๋ผ์ด ์์น์ ์์) ์ค์ ๋ก ๋ณ๊ฒฝ๋์ง ์์์ต๋๋ค. ์ด systemd ์์คํ
์์ ์ด์ ๋์ ๋ค์ ์ป์ ์์๋ ๋ฐฉ๋ฒ ๊ทธ๋ฌ๋ (๊ทธ๋ฆฌ๊ณ ๋ค๋ฅธ ์์คํ
,ํ์ง๋ง ๊ทธ๊ฒ์ ๋ค๋ฅผ ์ ์์)๋ฅผ ์ถ๊ฐํ์ฌ net.ifnames=0
์ปค๋ ์ธ์์.
(2 ์ฐจ ํต๊ณผ๋ก ์ธํด ๋ฏธ์ํ์ง๋ง, ์ฒซ ๋ฒ์งธ๋ ๋งค์ฐ ๊ฑด์ค์ ์ด์ง ์๋ค๊ณ ์๊ฐํฉ๋๋ค.)
์ด ๋ณ๊ฒฝ์ผ๋ก ์ธํด --scale
์ต์
์ด ์ธ๋ชจ์๋ ๊ฒ ๊ฐ์ต๋๋ค. ์๋น์ค์ ํ์ฅ ๋ ์ธ์คํด์ค์ ๋๋ฌํ๋ ค๋ฉด ์์ ์ ๋ฏธ์ฌ๋ฅผ ์์์ผํ๊ธฐ ๋๋ฌธ์
๋๋ค.
์๋ฅผ ๋ค์ด Nginx์ ์ ์คํธ๋ฆผ ์๋ฒ๋ก ์ฌ๋ฌ ์๋น์ค ์ธ์คํด์ค๊ฐ ์์ต๋๋ค.
ํธ์ง : ์์ธํ ๋ด์ฉ์ # 6365 ์ฐธ์กฐ
์, ์ ๋ง ๋์ฐํ ๋ณํ์ ๋๋ค. ๐
์คํฌ๋ฆฝํธ์์ ์ฌ์ฉํ๊ธฐ ์ํด ๋ฌด์์๋ก ์์ฑ ๋ ๋ฌธ์์ด์ ์ด๋ป๊ฒ ๊ตฌํด์ผํฉ๋๊น?
์ด ๋ฌธ์ ๋ ๋ง๋ฌ๊ณ ํฅํ ํ์ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ ๊ถ์ฅ ์ฌํญ์ ํํํ๊ณ ์ถ์ต๋๋ค. ์ฐ๋ฆฌ๋ project_service_index ํ์์ ์์กดํ๋ ์คํฌ๋ฆฝํธ๋ฅผ ๊ฐ์ง๊ณ ์์ผ๋ฉฐ ๋ง์ ์ฌ๋๋ค์ด Mac์์ ์ด๋ฌํ ์คํฌ๋ฆฝํธ๋ฅผ ์ฌ์ฉํฉ๋๋ค. ์ด์์ ์ธ ์ธ์์์๋ ์ฌ๋๋ค์ด ์ฌ์ฉํ๋ Mac ์ฉ Docker ๋ฒ์ ์ ์ ์ด ํ ์ ์์ง๋ง ์ง๊ธ์ ์๋ ์ ๊ทธ๋ ์ด๋ ๋ํ ์์๊ฐ ๋ํ๋๋ฉด ์ฌ๋๋ค์ด ์ ๊ทธ๋ ์ด๋ํฉ๋๋ค.
๋ด ๋ฌธ์ ๋ฐ ๊ถ์ฅ ์ฌํญ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
1) ์ ๊ทธ๋ ์ด๋ ๋ํ ์์์์ด ์ค๋ํ ๋ณ๊ฒฝ ์ฌํญ์ด ํ์๋์ง ์์์ผ๋ฏ๋ก์ด ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ ๋ช ํํ ๊ฒฝ๊ณ ๊ฐ ์์์ต๋๋ค. ์ด์์ ์ธ ์ธ๊ณ์์๋ ๊ฐ ์ ๊ทธ๋ ์ด๋์ ๋ํ ๋ชจ๋ ๋ฆด๋ฆฌ์ค ์ ๋ณด๋ฅผ ํ์ธํ์ง๋ง ์ง๊ธ์ ํ์ธํ์ง ์์ต๋๋ค. ๋ฐ๋ผ์ ์ด์ ๊ฐ์ ์ค์ํ ๊ฒ์ด ์ ๋ฐ์ดํธ ๋ํ ์์์์ ๋ช ์ ์ ์ผ๋ก ํธ์ถ๋๋ฉด ํฌ๊ฒ ๊ฐ์ฌ ํ ๊ฒ์ ๋๋ค.
2) 1)๋ก ์ธํด ๋ช ๋ฐฑํ ๊ฒฝ๊ณ ๊ฐ ์์์ต๋๋ค. ์ด์ ์ ๊ทธ๋ ์ด๋์์ ์ด์ ๊ฐ์ ๋ณ๊ฒฝ ์ฌํญ์ด ํธ์ถ๋๋ฉด ์ข์ ๊ฒ์ ๋๋ค. ์๋ฅผ ๋ค์ด, ์ต์ ๋ฒ์ ์ด์ ์ ์ ๊ทธ๋ ์ด๋๋ "์ปจํ ์ด๋ ์ด๋ฆ ์ง์ ์ฒด๊ณ๊ฐ ๋ค์ ๋ฒ์ ์์ ๋ณ๊ฒฝ๋ฉ๋๋ค. ์คํฌ๋ฆฝํธ๋ฅผ ์ ๊ทธ๋ ์ด๋ํ์ญ์์ค"์ ๊ฐ์ด ํ์๋ฉ๋๋ค.
3)์ด ์ค๋ ๋๋ฅผ ์ฝ์ ํ ์ฐ๋ฆฌ๊ฐ ์ฌ์ฉํ๋ ๋ช ๋ช ์ฒด๊ณ๊ฐ ๋ณด์ฅ๋์ง ์๋๋ค๋ ๊ฒ์ ์ดํดํ๊ณ ์ปจํ ์ด๋๋ฅผ ์ฐธ์กฐ ํ ์์๋ ๋ ์ข์ ๋ฐฉ๋ฒ์ด ์์์ ๊นจ๋ฌ์์ต๋๋ค. ๊ทธ๋ฌ๋ ์ฐ๋ฆฌ ๋ชจ๋๋ ๋ฐ์ ์ ๋ฌด ์ํ์ํ๊ณ ์์ผ๋ฉฐ ์์ ์ ๊ณํํด์ผํ๋ฏ๋ก ์คํฌ๋ฆฝํธ ๊ด๋ฆฌ์๋ก์ ์ปจํ ์ด๋ ์ด๋ฆ ์ฌ์ฉ์ ๋ ๋์ ๊ฒ์ผ๋ก ์ฆ์ ๋ณํ ํ ์ ์์ต๋๋ค. ๊ถ์ฅ๋๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ์ฌ์ฉํ๊ฒ๋์ด ๊ธฐ์๊ฒ ์๊ฐํ์ง๋ง ์ฝ๋๋ฅผ ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๋ฐ ์๊ฐ์ด ํ์ํฉ๋๋ค. ๋ฐ๋ผ์ ์ด์ ๊ฐ์ ๋ณ๊ฒฝ์ ๋ํ ์ง์ ์ค๋จ ์ ๋ต์ด ์์ผ๋ฉด ์ข์ ๊ฒ์ ๋๋ค.
์ฌ๊ธฐ์ ํต์ฌ ์ฌํญ์ ๋๋ถ๋ถ์ ์ฌ๋๋ค์ด docker compose ์ฌ์ฉ์ ๊ธฐ๋ณธ์ด๋๋ ์ปจํ ์ด๋ ์ด๋ฆ ์ง์ ์ฒด๊ณ๋ฅผ ๊ฐ์ ํ๊ณ ์์ผ๋ฉฐ ๋ช ๋ฐฑํ ์ฌ์ฉ ์ค๋จ ์ ๋ต์์ด ๊ธฐ๋ณธ ๋์์ ๋ณ๊ฒฝํ๋ฉด ์ด๋ฌํ ์ํฌ ํ๋ก์ ํด๋ก์ธ ์ ์๋ค๋ ๊ฒ์ ๋๋ค.
์ฌ๋๋ค์ ํญ์ ์๋ ํ ๋ฐฉ์๋๋ก ์ํํธ์จ์ด๋ฅผ ์ฌ์ฉํ์ง ์์ผ๋ฉฐ, ๊ฐ์ ์ด ์คํจ ํ ๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๋ฐ ์์ ๊ถ์ด ์์ต๋๋ค. ๊ทธ๋ฌ๋ ๋ช ๊ฐ์ง ๊ฐ๋จํ ์์ฌ ์ํต์ ํตํด ํฅํ ๋ณ๊ฒฝ ์ฌํญ์ ๋๋นํ๊ณ ์ต์ ๋ชจ๋ฒ ์ฌ๋ก๋ก ์ด๋ํ๋๋ก ๋๊ธฐ๋ฅผ ๋ถ์ฌ ํ ์ ์์ต๋๋ค.
์ด์ ์ docker container exec -it project_php_1 bash
์ ์์กดํ๋ค๋ฉด ๋ ์ด์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์๋น์ค ID๋ฅผ ์ฐพ์ผ๋ ค๋ฉด docker ps
๋ฅผ ์ฌ์ฉํด์ผํฉ๋๋ค.
๊ทธ๋ฌ๋ project_php
๋ฐ project_php_xdebug
๋๋ project_php
๊ณผ ์ผ์นํ๋ ๋ค๋ฅธ ์๋น์ค์ ์ผ์นํ๋ฏ๋ก docker ps -q --filter=name=project_php
์ฌ์ฉํ ์ ์์ต๋๋ค.
์ด์ ์ ์ฝ์ ์ ์์๋ docker container exec -it project_php_1 bash
์ด์ ๋ค์๊ณผ ๊ฐ์์ผํฉ๋๋ค.
docker container exec -it \
$(docker ps -q \
--filter label=com.docker.compose.project=project \
--filter label=com.docker.compose.service=php) \
bash
์ด๊ฒ์ ์๋ชป ์๊ฐํ ๋ณ๊ฒฝ์ด์์ต๋๋ค.
@jtreminio FWIW, ํ๋ก์ ํธ์์ ์ฌ์ ํ docker-compose exec php
ํ ์ ์์ต๋๋ค.
๋ณํ์ ๋ํ ์๊ฐ์ ๊ณต์ ํด์ฃผ์ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์ฐ๋ฆฌ๋์ด ์ ๋๋ก ์ฒ๋ฆฌ๋๊ณ ์ฐ๋ฆฌ์ ๋ถ๋ถ์ ์กฐ๊ธ ์ง๋์น๊ฒ, ๊ทธ๋ฆฌ๊ณ ๋ถ๋ถ์ ์ผ๋ก ๋ณต๊ท ๋ ๋์ ์์ฑ 1.23.2 ์ฐ๋ฆฌ๊ฐ ๋ง๋ ์ปจํ
์ด๋ ์์ ์ ๋ฏธ์ฌ๋ฅผ ์ ์งํ๊ณ ( docker-compose run
์ฐ๋ฆฌ๊ฐ ๋ ์ ์ ์ด ์ฒ๋ฆฌ ํ ์์๋, : # 4688 # 4549 # 5240, ์๋ ์๋๋๋ก).
ํด๊ฒฐํด์ผ ํ ๋ฏธํด๊ฒฐ ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์.
๊ธฐ๋ณธ๊ฐ์ด ์์ ์ฒ๋ผ ์๋ํ๋๋ก --no-slug
๋๋ ๋ ๋ฐ๋์งํ๊ฒ๋ --slug
๋ฅผ ๋๋ ๋ช
๋ น ์ค ์ต์
์ ์ถ๊ฐ ํ ๊ณํ์ด ์์ต๋๊น?
1.23.2
์ด์ ๋ฐฉ์์ผ๋ก ๋๋๋ฆฝ๋๋ค.
docker-compose up
์ ๋ํด์๋ง ๋๋ ๋ ธ์ง๋ง docker-compose run
๋ํด์๋ ๋ ๋๋ฆฌ์ง ์์์ต๋๋ค.
๋น ๋ฅธ ํด๊ฒฐ ๊ฐ์ฌํฉ๋๋ค !!
2018 ๋ 11 ์ 28 ์ผ ์คํ 8์ 9 ๋ถ์ Joffrey F [email protected] ์ ๋ค์๊ณผ ๊ฐ์ด ์ผ์ต๋๋ค.
๋ณํ์ ๋ํ ์๊ฐ์ ๊ณต์ ํด์ฃผ์ ๋ชจ๋ ๋ถ๋ค๊ป ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ์ฐ๋ฆฌ๋ ์ด๊ฒ์ด ์ ๋๋ก ์ฒ๋ฆฌ๋์ง ์์๊ณ ์ฐ๋ฆฌ ์ธก์์ ์ฝ๊ฐ ์ง๋์น๊ฒ ์ด์ฑ์ ์ด๋ผ๋ ๋ฐ ๋์ํ๋ฉฐ Compose 1.23.2์์ ๋ถ๋ถ์ ์ผ๋ก ๋๋ ๋ ธ์ต๋๋ค. 4688 # 4549 # 5240, ์๋ ์๋๋๋ก).
ํด๊ฒฐํด์ผ ํ ๋ฏธํด๊ฒฐ ๋ฌธ์ ๊ฐ ์์ผ๋ฉด ์๋ ค์ฃผ์ธ์.
โ
๋๊ธ์ ๋ฌ์ ๊ธฐ ๋๋ฌธ์ ์์ ํ ๊ฒ์ ๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ฑฐ๋ GitHub์์ ๋ณด๊ฑฐ๋ ์ค๋ ๋๋ฅผ ์์๊ฑฐํ์ญ์์ค.
@ shin- ๋๋ ์ด๊ฒ์ด ์ด๋ ์์ ์์-์๋ง๋ 1.24์์ ๋ฐํ ๋ ๊ฒ์ด๋ผ๊ณ ๊ฐ์ ํฉ๋๋ค (๊ทธ๋ฐ ์ค์ํ ๋ณ๊ฒฝ์ด๊ธฐ ๋๋ฌธ์?). ๊ทธ๋ ๋ค๋ฉด ์ปค๋ฎค๋ํฐ์ ํ๋ ฅํ์ฌ ์ฌ๋ฌ๊ทธ์์ด์ด๋ฅผ ์ฌ์ฉํ๋ ์ฌ๋๋ค์์ํ ๋์ฒด ๊ฒฝ๋ ๋ฉ์ปค๋์ฆ์ ์ดํดํ๊ณ ๊ถ์ฅ ํ ์ ์์ต๋๊น? ๊ทธ ๋ํ๋ฅผํ๊ธฐ์ ๊ฐ์ฅ ์ข์ ์ฅ์์ ๋ํด ์ ๋ชจ๋ฅด๊ฒ ์ต๋๋ค.
<project>_<service>_<index>
์์<project>_<service>_<index>_<slug>
๋ณ๊ฒฝ๋จ
์ด๊ฒ์ ๊ธฐ๋ฅ์ด ์๋ ๋ฒ๊ทธ์
๋๋ค.
๊ฐ์ฌ!
ansible_connection=docker
... ๐ !!๋ก ์คํ๋๋ ansible ํ๋ ์ด ๋ถ์ ์๊ฐํด๋ณด์ญ์์ค!
๋ช
์ ์ ์ผ๋ก container_name
ํด์ผํฉ๋๊น? ๋๋ ๋ฌด์์ <slug>
!!๋ก ์ธ๋ฒคํ ๋ฆฌ๋ฅผ ๊ณ์ ์
๋ฐ์ดํธํ ๊น์?
์ ๋ง ๋์๋ค!
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
@ shin- ๊ฐ์ธ์ ์ผ๋ก ๊ทธ๋ฆฌ๊ณ ๋ชจ๋ ๋์ปค-์๊ณก ๋ฐ ๋์ปค ํ์ ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ด ๋ฌด์์ธ์ง, ๊ทธ๋ฆฌ๊ณ ์ ์ฒด ์ฐ์ ์ด ์์กดํ๋ ๋๋ฆฌ ์ฑํ ๋ ํ๋ก์ ํธ์ ์ ์ฉํ๋ ๋ฐฉ๋ฒ์ ์ด๋ฏธ ๋ฐฐ์์ผํฉ๋๋ค.
์ฒซ์งธ, ์ด์ ๋ฒ์ ๊ณผ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ ์ด์ ์ ๋ณด์ฅํ์ง ์์๋ ๊ฒ์ ๊นจ๋จ๋ฆฌ๋ ๊ฒ์ด ์๋๋๋ค. ์ด ๋ฌผ๊ฑด์ ์๋ฌด๋ ์ฌ์ฉํ์ง ์์๋ ์๋ฌด๋ ์ ๊ฒฝ ์ฐ์ง ์์ต๋๋ค.
์ญ ํธํ๋์ง ์๋ ๋ณ๊ฒฝ์ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ด ์ค์ ๋ก ์์กดํ๋ ๊ฒ์ ๊นจ๋จ๋ฆด ๋์ ๋๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ๊ฒ์ ๊ฒฐ๊ตญ Apache 2.0์ด๊ณ ์ ์ฒด ํ๋ก์ ํธ
provided on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND
์ด๊ธฐ ๋๋ฌธ์ ์ด๋ค ๋ณด์ฅ์ด ์์๋์ง๋ ์ค์ํ์ง ์์ต๋๋ค. ์ฌ์ฉ์๊ฐ ๋ฌด์์ ์์กดํ๋์ง ๊ฒฐ์ ํฉ๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฌ๋ฌ๋ถ (์ ์ฒด ํ)์ ๋๊ฐ ์ฌ๋ฌ๋ถ์ ํ๋ก์ ํธ๋ฅผ ์ฌ์ฉํ๋์ง, ์, ์ด๋ป๊ฒ ์ฌ์ฉ ํ๋์ง๋ฅผ ์ธ์ํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์ฐ๊ธฐ ์์ํด์ผํฉ๋๋ค.๋์งธ, ์ด๋ฌํ ๋ณํ๋ฅผ ์ฌ์ฉ์ ๊ธฐ๋ฐ์ ๋์ ํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์์ผํฉ๋๋ค. ์ด "๋ฌด์์ ์ ๋ฏธ์ฌ"๋ ์ฌ์ฉ์๊ฐ
external_links
๋ฐvolumes_from
์ฌ์ฉํ๋ ๋ฐฉ์์ ํ์คํ ์์์ํต๋๋ค. ๋ฐ๋ผ์ ๋ช ์์ ์ธcontainer_name
์ธํธ๊ฐ ์๊ฑฐ๋ ๊ทธ๋ ๊ฒ ๋ณด์ผ ๋ ์ฌ์ฉ ์ค๋จ ๊ฒฝ๊ณ ๋ ๋งค์ฐ ๊ฐ์ฌํ๊ฒ ์ต๋๋ค. ๋ค์ ๋ฌธ์๋ "๋ค๋ฅธ ์ฌ๋์ด ์ํํ๋ ์์ "์ ๋ํด ์ ์๊ณ ์์ด์ผํฉ๋๋ค.์ ์งธ, @ shin- ๋น์ ์ ๊ฐ์ธ์ ์ผ๋ก ๋น์ ์ ํ๋ก์ ํธ์ ์ง์ ๊ธฐ์ฌํ์ง ์๊ณ ๋น์ ์ ์ฌ์ฉ์ ์ธ ์ฌ๋๋ค๊ณผ ๋ํํ๋ ๋ฐฉ๋ฒ์ ๋ฐฐ์์ผํฉ๋๋ค. ํ๋ก์ ํธ์ ํฅํ ๊ฐ๋ฐ์ ์ดํดํ๊ณ ๋ค๋ฅธ ์๋ฃจ์ ์ผ๋ก ๋ง์ด๊ทธ๋ ์ด์ ํ๋ ๋ฐ ๋ ๋ง์ ์์์ ํฌ์ํ์ง ์์ผ๋ ค๋ ์ ์ผํ ํฌ๋ง์ผ๋ก ์ฌ๊ธฐ์์ ์์ฒญ์ ์ ์ถํ๊ณ ํ ๋ก ์ ์ฐธ์ฌํ๋ ๋ฐ ์๊ฐ์ ํฌ์ํ์ญ์์ค.
๋ท์งธ, Docker ํ์ Docker์์ ๋์ ๋ฒ๋ ค๊ณ ๋ ธ๋ ฅํ๊ณ ์์ง๋ง Docker ์์ฒด์ ๊ดํ ๊ฒ์ด ์๋๋๋ค. Docker๊ฐ ๋น์ฉ์ ์ง๋ถ ํ ์์๋ ์ ์ผํ ๋ฐฉ๋ฒ์ ์ ์ฒด Docker ์ธํ๋ผ๊ฐ ๋น์ฉ์ ์ง๋ถ ํ ๊ฐ์น๊ฐ ์์์ ์ฆ๋ช ํ๋ ๊ฒ์ ๋๋ค. ๊ฐ๋ฐ ํ์ด ๋๋ถ๋ถ์ ์๊ฐ ๋์ ์ปค๋ฎค๋ํฐ์ ๋ฑ์ ๋๋ฆฌ๋ฉด ์ฌ์ฉ์ ์ฑ๊ณต์ ์งํฅํ๋ ์ ํ์ธ์ง ์ ์ ์์ต๋๋ค.
๋ค์ฏ์งธ, ๋ค์ ํ ๋ฒ, ์ฐ๋ฆฌ ๋ชจ๋๋ ์ ๋ณด๋ค๋ ๋ํ๊ณผ ์น๊ตฌ์ด๋ฉฐ์ด ๋ชจ๋ ๊ฒ์ ๋์ ๋๋ฆฌ๊ธฐ ์ํด ์ ๋ง ๋ ธ๋ ฅํ๊ณ ์์ต๋๋ค. ๊ทธ๋ฆฌ๊ณ ์ฐ๋ฆฌ๋ ๋น์ ์ ์น๊ตฌ์ด๊ธฐ ๋๋ฌธ์ ๋์ปค ์คํ์์ ํ์ถํ๋ ๊ฒ์ ๊ณ ํต ์ค๋ฌ์ธ ๊ฒ์ด์ง๋ง, ์ด์ ๋ ๊ทธ ์๋ณ์ด ์ ํ ๋นํ์ค์ ์ผ๋ก ๋ณด์ด์ง ์์ต๋๋ค.