์ด ๋ฌธ์๋ ์ปจํ ์ด๋ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ ๋ ์ ํ ์ฌํญ์ ๋ค๋ฃจ๋ ๋ฌธ์ ์๋ฆฌ์ฆ์ ๋ ๋ฒ์งธ ๋ฌธ์์ ๋๋ค.
ะ
๋ค์ด๋ก๋ ๋น๋ ์ ํ์ ์ด์ ์
๋ฌด๋ฃ ์๊ธ์ , ์ต๋ช
์ฌ์ฉ์: 100์๊ฐ ๋์ 6ํ ๋ค์ด๋ก๋
๋ฌด๋ฃ ์๊ธ์ , ์น์ธ๋ ์ฌ์ฉ์: 200์๊ฐ ๋์ 6๊ฐ ๋ค์ด๋ก๋
ํ๋ก ํ๋: ๋ฌด์ ํ
ํ ๊ณํ: ๋ฌด์ ํ
Docker ๋ค์ด๋ก๋ ๋น๋๋ Docker Hub์ ๋ํ ๋งค๋ํ์คํธ ์์ฒญ ์๋ก ์ ์๋ฉ๋๋ค. ์ด๋ฏธ์ง ๋ค์ด๋ก๋ ๋น๋ ์ ํ์ ์ด๋ฏธ์ง ์์ ์ ๊ณ์ ์ ํ์ด ์๋ ์ด๋ฏธ์ง๋ฅผ ์์ฒญํ๋ ๊ณ์ ์ ํ์ ๋ฐ๋ผ ๋ค๋ฆ ๋๋ค. ์ต๋ช (์น์ธ๋์ง ์์) ์ฌ์ฉ์์ ๊ฒฝ์ฐ ๋ค์ด๋ก๋ ๋น๋๋ IP ์ฃผ์์ ์ฐ๊ฒฐ๋ฉ๋๋ค.
NB ๋ ๋ง์ ๋ฏธ๋ฌํจ๊ณผ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฐ๊ฒ ๋ฉ๋๋ค.
์ปจํ ์ด๋ ์ด๋ฏธ์ง ๋ ์ด์ด์ ๊ด๋ จํ์ฌ ๊ณ ๊ฐ๊ณผ ์ปค๋ฎค๋ํฐ๋ก๋ถํฐ ์ง๋ฌธ์ ๋ฐ๊ณ ์์ต๋๋ค. ๋ค์ด๋ก๋ ๋น๋๋ฅผ ์ ํํ ๋ ์ด๋ฏธ์ง ๋ ์ด์ด๋ฅผ ๊ณ ๋ คํ์ง ์์ต๋๋ค. ๋งค๋ํ์คํธ ๋ค์ด๋ก๋๋ฅผ ์ ํํ๊ณ ๋ ์ด์ด ์(BLOB ์์ฒญ)๊ฐ ํ์ฌ ๋ฌด์ ํ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ด ๋ณ๊ฒฝ ์ฌํญ์ ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ๋ ๋ชจ๋ ๋ฃฉ์์ ๋ ์ด์ด๋ฅผ ๊ณ์ฐํ ํ์๊ฐ ์๋๋ก ๋ณด๋ค ์ฌ์ฉ์ ์นํ์ ์ผ๋ก ๋ง๋ค๊ธฐ ์ํ ์ปค๋ฎค๋ํฐ ํผ๋๋ฐฑ์ ๊ธฐ๋ฐ์ผ๋ก ํฉ๋๋ค.
Docker Hub ์ด๋ฏธ์ง ๋ค์ด๋ก๋ ๋น๋์ ๋ํ ์์ธํ ๋ถ์
์ฐ๋ฆฌ๋ ์๋ ์ ํ์ ์ด์ ์ ์ ํ ๋ฐฉ๋ฒ์ ์ ํํ ํ์ ํ๊ธฐ ์ํด Docker Hub์์ ์ด๋ฏธ์ง ๋ค์ด๋ก๋๋ฅผ ๋ถ์ํ๋ ๋ฐ ๋ง์ ์๊ฐ์ ๋ณด๋์ต๋๋ค. ๊ฑฐ์ ๋ชจ๋ ์ฌ์ฉ์๊ฐ ์ผ๋ฐ์ ์ธ ์ํฌํ๋ก์ ๋ํด ์์ธก ๊ฐ๋ฅํ ์๋๋ก ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๊ณ ์์์ ํ์ธํ์ต๋๋ค. ๊ทธ๋ฌ๋ ์ ์ ์์ ์ต๋ช ์ฌ์ฉ์์ ๋์ ๋๋ ์ํฅ์ด ์์ต๋๋ค. ์๋ฅผ ๋ค์ด ๋ชจ๋ ๋ค์ด๋ก๋์ ์ฝ 30%๊ฐ ์ต๋ช ์ฌ์ฉ์์ 1%์์๋ง ๋ฐ์ํฉ๋๋ค.
์๋ก์ด ์ ํ์ ์ด ๋ถ์์ ๊ธฐ๋ฐ์ผ๋ก ํ๋ฏ๋ก ๋๋ถ๋ถ์ ์ฌ์ฉ์๋ ์ํฅ์ ๋ฐ์ง ์์ต๋๋ค. ์ด๋ฌํ ์ ํ์ Docker ํ์ต, ์ฝ๋ ๊ฐ๋ฐ, ์ด๋ฏธ์ง ๋น๋ ๋ฑ ๊ฐ๋ฐ์์ ์ผ๋ฐ์ ์ธ ์ฌ์ฉ์ ๋ฐ์ํ๊ธฐ ์ํด ๋ง๋ค์ด์ก์ต๋๋ค.
๊ฐ๋ฐ์๊ฐ ๋ค์ด๋ก๋ ๋น๋ ์ ํ์ ๋ ์ ์ดํดํ ์ ์๋๋ก ์ง์
์ด์ ์ฐ๋ฆฌ๋ ๊ทธ ์ํฅ๊ณผ ๊ฒฝ๊ณ๊ฐ ์ด๋์ ์์ด์ผ ํ๋์ง ์ดํดํ์ผ๋ฏ๋ก ์ด๋ฌํ ์ ํ์ ์๋์ ์ํ ๊ธฐ์ ์ ์กฐ๊ฑด์ ๊ฒฐ์ ํด์ผ ํ์ต๋๋ค. Docker ๋ ์ง์คํธ๋ฆฌ์์ ์ด๋ฏธ์ง ๋ค์ด๋ก๋๋ฅผ ์ ํํ๋ ๊ฒ์ ๋งค์ฐ ์ด๋ ต์ต๋๋ค. ๋ ์ง์คํธ๋ฆฌ ์ค๋ช ์์ ๋ค์ด๋ก๋์ฉ API๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค. ๊ทธ๋ฅ ์กด์ฌํ์ง ์์ต๋๋ค. ์ฌ์ค ์ด๋ฏธ์ง ๋ค์ด๋ก๋๋ API์ ๋งค๋ํ์คํธ ์์ฒญ๊ณผ BLOB์ ์กฐํฉ์ด๋ฉฐ, ์ํ์ ๋ฐ๋ผ ๋ค๋ฅด๊ฒ ์คํ๋ฉ๋๋ค. ํด๋ผ์ด์ธํธ ๋ฐ ์์ฒญ๋ ์ด๋ฏธ์ง.
์๋ฅผ ๋ค์ด ์ด๋ฏธ ์ด๋ฏธ์ง๊ฐ ์๋ ๊ฒฝ์ฐ Docker ์์ง์ ๋งค๋ํ์คํธ์ ๋ํ ์์ฒญ์ ๋ฐํํ๊ณ ํ์ฉ๋ ๋งค๋ํ์คํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ํ ๋ชจ๋ ๋ ์ด์ด๊ฐ ์ด๋ฏธ ์์์ ์ดํดํ ๋ค์ ์ค์งํฉ๋๋ค. ๋ฐ๋ฉด์ ์ฌ๋ฌ ์ํคํ ์ฒ๋ฅผ ์ง์ํ๋ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๋ ๊ฒฝ์ฐ ๋งค๋ํ์คํธ ์์ฒญ์ ์ง์๋๋ ๊ฐ ์ํคํ ์ฒ์ ๋ํ ์ด๋ฏธ์ง ๋งค๋ํ์คํธ ๋ชฉ๋ก์ ๋ฐํํฉ๋๋ค. ๊ทธ๋ฐ ๋ค์ Docker ์์ง์ ์คํ ์ค์ธ ํน์ ์ํคํ ์ฒ์ ๋ํ ๋ ๋ค๋ฅธ ๋งค๋ํ์คํธ ์์ฒญ์ ๋ฐํํ๊ณ ๊ทธ ๋๊ฐ๋ก ์ด๋ฏธ์ง์ ๋ชจ๋ ๋ ์ด์ด ๋ชฉ๋ก์ ๊ฐ์ ธ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์ ๋๋ฝ๋ ๊ฐ ๋ ์ด์ด(BLOB)๋ฅผ ์ฟผ๋ฆฌํฉ๋๋ค.
NB ์ด ์ฃผ์ ๋ ๋ค์์์ ๋ ๊ด๋ฒ์ํ๊ฒ ๋ค๋ฃน๋๋ค.
์ด๋ฏธ์ง ๋ค์ด๋ก๋๋ ์ค์ ๋ก ํ๋ ๋๋ ๋ ๊ฐ์ ๋งค๋ํ์คํธ ์์ฒญ์ด๋ฉฐ XNUMX์์ ๋ฌดํ๋๊น์ง ๋ ์ด์ด(BLOB)์ ๋ํ ์์ฒญ์ ๋๋ค. ์ญ์ฌ์ ์ผ๋ก Docker๋ ๋์ญํญ ์ฌ์ฉ๊ณผ ๊ฐ์ฅ ๊ด๋ จ์ด ์๊ธฐ ๋๋ฌธ์ ๊ณ์ธต๋ณ๋ก ๋ค์ด๋ก๋ ๋น๋๋ฅผ ์ถ์ ํ์ต๋๋ค. ๊ทธ๋ฌ๋ ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ์ฐ๋ฆฌ๋ ์ปค๋ฎค๋ํฐ์ ์๊ฒฌ์ ๊ท๋ฅผ ๊ธฐ์ธ์์ต๋๋ค. ์ด๋ ์์ฒญ๋ ๋ ์ด์ด ์๋ฅผ ์ถ์ ํด์ผ ํ๊ธฐ ๋๋ฌธ์ Dockerfile ์์ ๊ณผ ๊ด๋ จ๋ ๋ชจ๋ฒ ์ฌ๋ก๋ฅผ ๋ฌด์ํ๊ฒ ๋๊ณ ๋จ์ง ์ํ๋ ์ฌ์ฉ์์๊ฒ ๋ ์ง๊ด์ ์ด๊ธฐ ๋๋ฌธ์ ๋๋ค. ์ธ๋ถ ์ฌํญ์ ๋ํ ๋ง์ ์ดํด ์์ด ๋ ์ง์คํธ๋ฆฌ๋ก ์์ ํ์ญ์์ค.
๋ฐ๋ผ์ ๋งค๋ํ์คํธ ์์ฒญ์ ๊ธฐ๋ฐ์ผ๋ก ์์ฒญ ์๋ฅผ ์ ํํฉ๋๋ค. ์ด๊ฒ์ ์ฌ์ฉ์๊ฐ ์ดํดํ๊ธฐ ์ฌ์ด ์ด๋ฏธ์ง ๋ค์ด๋ก๋์ ์ง์ ๊ด๋ จ์ด ์์ต๋๋ค. ์ค์ ๋ก ์ฝ๊ฐ์ ๋์์ค๊ฐ ์์ต๋๋ค. ์ด๋ฏธ ์กด์ฌํ๋ ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ก๋ํ๋ ค๊ณ ํ๋ฉด ๋ ์ด์ด๋ฅผ ๋ค์ด๋ก๋ํ์ง ์๋๋ผ๋ ์์ฒญ์ด ๊ณ์ ๊ณ ๋ ค๋ฉ๋๋ค. ์ด์จ๋ ๋ค์ด๋ก๋ ๋น๋๋ฅผ ์ ํํ๋ ์ด ๋ฐฉ๋ฒ์ด ๊ณต์ ํ๊ณ ์ฌ์ฉ์ ์นํ์ ์ด๊ธฐ๋ฅผ ๋ฐ๋๋๋ค.
๊ทํ์ ์๊ฒฌ์ ๊ธฐ๋ค๋ฆฌ๊ฒ ์ต๋๋ค.
์ฐ๋ฆฌ๋ ์ ํ ์ฌํญ์ ๋ชจ๋ํฐ๋งํ๊ณ ์ผ๋ฐ์ ์ธ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์ ์ ํ๊ฒ ์กฐ์ ํ์ฌ ๊ฐ ์ ํ์ ์ฌ์ฉ์์ ๋ํด ์ ํ ์ฌํญ์ด ์ ์ ํ๋๋ก ํ ๊ฒ์ด๋ฉฐ, ํนํ ๊ฐ๋ฐ์๊ฐ ์์ ์ ์ํํ๋ ๊ฒ์ ์ ๋ ๋ฐฉํดํ์ง ์๋๋ก ๋ ธ๋ ฅํ ๊ฒ์ ๋๋ค.
์ด๋ฌํ ๋ณ๊ฒฝ ์ฌํญ์ ๋ฐ๋ผ CI ๋ฐ ์ ํฌ ์์คํ ์กฐ์ ์ ๋ํ ๋ ๋ค๋ฅธ ๊ธฐ์ฌ๋ฅผ ์์ผ๋ก ๋ช ์ฃผ ๋์ ์ง์ผ๋ด ์ฃผ์๊ธฐ ๋ฐ๋๋๋ค.
๋ง์ง๋ง์ผ๋ก ์คํ ์์ค ์ปค๋ฎค๋ํฐ์ ๋ํ ์ง์์ ์ผํ์ผ๋ก 1์ XNUMX์ผ๊น์ง ์คํ ์์ค์ ๋ํ ์๋ก์ด ์๊ธ์ ๋ฅผ ์ ๊ณตํ ์์ ์
๋๋ค. ์ ์ฒญํ๋ ค๋ฉด ์์์ ์์ฑํ์ญ์์ค
์๋น์ค ์ฝ๊ด์ ์ต์ ๋ณ๊ฒฝ ์ฌํญ์ ๋ํ ์์ธํ ๋ด์ฉ์ ๋ค์์ ์ฐธ์กฐํ์ญ์์ค.
์ด๋ฏธ์ง ๋ค์ด๋ก๋ ๋น๋ ์ ํ์ ๋์ฌ์ผ ํ๋ ์ฌ๋๋ค์ ์ํด Docker๋ ๋ฌด์ ํ ์ด๋ฏธ์ง ๋ค์ด๋ก๋๋ฅผ ๊ธฐ๋ฅ์ผ๋ก ์ ๊ณตํฉ๋๋ค.
์ถ์ฒ : habr.com