์๋ ํ์ธ์,
docker-compose + docker-machine์ ์ฌ์ฉํ์ฌ ์๊ฒฉ ํด๋ผ์ฐ๋ ์ปดํจํฐ์ ์๋น์ค๋ฅผ ๋ฐฐํฌํ๊ณ ์์ต๋๋ค. ๋๋ docker-compose build
์ ์ฒซ ๋ฒ์งธ ๋จ๊ณ๊ฐ ๊ด์ฐฎ์ ์ธํฐ๋ท ์ฐ๊ฒฐ (๋ณดํต 3 ๋ถ์์ 15 ๋ถ ์ฌ์ด)์ ๊ฐ์ง ๋์๊ฒ ๋งค์ฐ ๋๋ฆฌ๋ค๋ ๊ฒ์ ์์์ต๋๋ค.
--verbose
์คํํ ๋ ๋๋ฆฐ ๋จ๊ณ๋ docker build <- (pull=False, nocache=False, stream=True, tag=u'backenddev_web', path='XXX', rm=True, dockerfile='Dockerfile-production')
๋ฉํฑ์ ํ๋ ๋ชจ๋ํฐ์์ ๋ณผ ์ ์๋ฏ์ด ์ด๊ฒ์ ์ผ๋ถ ๋ฐ์ดํฐ ์ ๋ก๋๊ฐ ์ํ๋๋ ๋จ๊ณ์ ๋๋ค. ๋ํ ๋ด๊ฐ ๊ตฌ์ถํ๋ ๋๋ ํ ๋ฆฌ์ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ฉด ์๊ฐ์ด ์ค์ด๋๋ ๊ฒ์ ์์์ต๋๋ค. ์ด ๋จ๊ณ์์ ์ ๋ก๋ ์๋๋ 100Ko / s์์ 200Ko / s ์ฌ์ด์ ๋๋ค. Google Compute ๋๋ Digital Ocean์ ๊ธฐ๋ฐ์ผ๋ก ๊ตฌ์ถ ํ ๋ ๋งค์ฐ ๋๋ฆฝ๋๋ค. ์ต์ 800Ko / s๋ฅผ ์ ๋ก๋ ํ ์ ์์ด์ผํฉ๋๋ค.
์๋๋ฅผ ๋์ด๊ฑฐ๋ ๋ด ๋ฌธ์ ๋ฅผ ๋ ๊น์ด ํ๊ณ ๋๋ ๋ฐฉ๋ฒ์ ์์ญ๋๊น?
๊ฐ์ฌ.
build
์ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์ ๋น๋ ์ปจํ
์คํธ๋ฅผ Docker ์์ง์ ์
๋ก๋ํ๋ ๊ฒ์
๋๋ค. ๋น๋ ์ปจํ
์คํธ๋ ๋๋ ํ ๋ฆฌ์ ํ์ ๋๋ ํ ๋ฆฌ์์๋ ๋ชจ๋ ๊ฒ์
๋๋ค. ํฐ ๋ฐ์ดํฐ ํ์ผ์ด ์๊ฑฐ๋ .git
๊ฐ ํฐ ๊ฒฝ์ฐ ๋ถํ์ํ ํญ๋ชฉ์ ๋ง์ด ์
๋ก๋ ํ ์ ์์ต๋๋ค. .dockerignore
์ด (๊ฐ) ์ถ๊ฐ๋์์ผ๋ฏ๋ก ์
๋ก๋ํ์ง ์์ ํ์ผ์ ๊ฑด๋ ๋ธ ์ ์์ต๋๋ค.
https://docs.docker.com/reference/builder/#dockerignore -file
์ด๊ฒ์ ๋์์ด ๋ ๊ฒ์
๋๋ค. .git
๋ฌด์ํ๊ณ ์ด๋ฏธ 1,000 ๋ง
ํฐ!
build
์ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์ ๋น๋ ์ปจํ ์คํธ๋ฅผ Docker ์์ง์ ์ ๋ก๋ํ๋ ๊ฒ์ ๋๋ค. ๋น๋ ์ปจํ ์คํธ๋ ๋๋ ํ ๋ฆฌ์ ํ์ ๋๋ ํ ๋ฆฌ์์๋ ๋ชจ๋ ๊ฒ์ ๋๋ค. ํฐ ๋ฐ์ดํฐ ํ์ผ์ด ์๊ฑฐ๋.git
๊ฐ ํฐ ๊ฒฝ์ฐ ๋ถํ์ํ ํญ๋ชฉ์ ๋ง์ด ์ ๋ก๋ ํ ์ ์์ต๋๋ค..dockerignore
์ด (๊ฐ) ์ถ๊ฐ๋์์ผ๋ฏ๋ก ์ ๋ก๋ํ์ง ์์ ํ์ผ์ ๊ฑด๋ ๋ธ ์ ์์ต๋๋ค.https://docs.docker.com/reference/builder/#dockerignore -file
๋๋ ๋น์ ์๊ฒ ํฐ ์ข์์๋ฅผ ์ค์ผํฉ๋๋ค. ๋น์ ์ ๋๋ต์ ์ ๋ง๋ก ๋ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํฉ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
build
์ ์ฒซ ๋ฒ์งธ ๋ถ๋ถ์ ๋น๋ ์ปจํ ์คํธ๋ฅผ Docker ์์ง์ ์ ๋ก๋ํ๋ ๊ฒ์ ๋๋ค. ๋น๋ ์ปจํ ์คํธ๋ ๋๋ ํ ๋ฆฌ์ ํ์ ๋๋ ํ ๋ฆฌ์์๋ ๋ชจ๋ ๊ฒ์ ๋๋ค. ํฐ ๋ฐ์ดํฐ ํ์ผ์ด ์๊ฑฐ๋.git
๊ฐ ํฐ ๊ฒฝ์ฐ ๋ถํ์ํ ํญ๋ชฉ์ ๋ง์ด ์ ๋ก๋ ํ ์ ์์ต๋๋ค..dockerignore
์ด (๊ฐ) ์ถ๊ฐ๋์์ผ๋ฏ๋ก ์ ๋ก๋ํ์ง ์์ ํ์ผ์ ๊ฑด๋ ๋ธ ์ ์์ต๋๋ค.https://docs.docker.com/reference/builder/#dockerignore -file