- ๐ Docker๋ฅผ ์ฌ์ฉํ๋ ์ด์
- ๐ Docker๋?
- ๐ ์ฐธ์กฐ
์๋ฒ๋ฅผ ๋ง๋ค๊ธฐ ์ํด์๋ ํ๊ฒฝ์ด ๊ฐ์ถ์ด์ ธ์ผํ๋ค. ๋ํ ๊ทธ์ ๋ง๋ ํ๊ฒฝ์๋ ํ์ฌ๋ง๋ค, ์ฌ๋๋ง๋ค ๋ชจ๋ ๋ค๋ฅธ ํ๊ฒฝ์ผ๋ก ์ด๋ฃจ์ด์ ธ์๋ค. ๊ทธ๋ ๊ธฐ ๋๋ฌธ์ ์๋ก์ด ์ปดํจํฐ๋ฅผ ์ฌ๊ฑฐ๋ ์๋ก์ด ์ง์์ด ๋ค์ด์ค๋ ๊ฒฝ์ฐ, ํ์ ์ ํ๊ธฐ ์ํด ์ปดํจํฐ์ ๊ฐ๋ฐํ๊ฒฝ์ ๋ชจ๋ ๋๊ฐ์ด ๋ง๋ค์ด์ผ ํ๋ค.
์๋ฅผ๋ค์ด, Node,js์ ๊ฐ์ ๋ฐํ์ ํ๊ฒฝ, ์ธ์ด์ ๋ฒ์ , ๋ฐ์ดํฐ๋ฒ ์ด์ค, node_modules ๋ฑ๋ฑ ํ๋๊ฐ์ง๊ฐ ์๋ ๊ฒ์ด๋ค.
๋ฐ๋ผ์ ์ด์ ์๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถํ๋ ๊ณผ์ ์ ์บก์ฒํ๊ฑฐ๋, ๋ฐ๋ก ์ ๋ฆฌํ๋ ๋ฐฉ๋ฒ์ ์ฌ์ฉํ๋ค.
ํ์ง๋ง, ์ด์๊ฐ์ด ์ผ์ผํ ๋ชจ๋ ๊ณผ์ ์ ์ ๋ฆฌํ๊ณ ์ฒ์๋ถํฐ ์ ์ฉ์ํค๋ ๋ฐฉ๋ฒ์ ๋งค์ฐ ๋ฒ๊ฑฐ๋ก์ด ์ผ์ด๋ค.
๊ฒฐ๋ก ์ ์ผ๋ก, ์ด๋ฌํ ๋ฒ๊ฑฐ๋ก์์ ํด์ํ๊ธฐ ์ํด Docker๊ฐ ํ์ํ๊ฒ ๋์์ผ๋ฉฐ, ์ฐ๋ฆฌ๋ ๋์ปค๋ฅผ ํ์ฉํ์ฌ ์ด๋ฌํ ์์ ์ ๊ฐํธํ๊ฒ ํ ์ ์๋ค.
๋ฐ๋ก, ๋์ปค๋ก ํ๊ฒฝ์ค์ ์ ๋ณด๊ฐ ๋ด๊ธด ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด ํด๋น ์ด๋ฏธ์ง๋ฅผ ํตํด ์๋ก์ด ์ฌ๋์ด ๊ณต๋์์ ์ ์ถ๊ฐ๋๋๋ผ๋ ์ฒ์๋ถํฐ ์ผ์ผํ ํ๊ฒฝ์ ๋ง๋ค ๋ฒ๊ฑฐ๋ก์์ด ์์ด์ง๋ค.
๋์ปค๋ ๊ฐ๋ฐ ํ๊ฒฝ ์์๋ค์ด ์ค์น๋ ๋ชจ์ต์ ์ด๋ฏธ์ง๋ก ์ ์ฅํ๋ค. ์ฆ ์ฐ๋ฆฌ๊ฐ ์ํ๋ ๊ฐ๋ฐํ๊ฒฝ์ ์ค์ ํ๊ณ ๊ทธ์ ๋ง์ถฐ ๊ฐ์ ๋จธ์ ์ ๋ง๋ ๋ค๊ณ ์๊ฐํ๋ฉด๋๋ค. ์ฌ๊ธฐ์ ๋ง๋ค์ด์ง ๊ฐ์๋จธ์ ์ ๋ง๋ ํ๊ฒฝ ์ค๋ช ์๊ฐ ์ด๋ฏธ์ง๋ผ๋ ์ด๋ฆ์ ๋ชจ์ต์ผ๋ก ์ ์ฅ๋๋ค.
๊ทธ ํ, ์ด๋ฏธ์ง๋ค์ด ์๋ก ์ฐ๊ฒฐ๋์ ๋์ํ๋ ์ค์ ์ ๋ฌธ์(Dockerfile)๋ก ์ ์ฅํํ๊ณ ์ ์ปดํจํฐ์ ๊ฐ์ ๋ณต์ฌํ ๋ฌธ์์ ๋ด์ฉ๋๋ก ์ด๋ฏธ์ง๋ฅผ ๋ค์ด๋ฐ์ ์ค์นํ๋ค.
์ฆ, ๊ฐ์๋จธ์ ๊ณผ ๋น์ทํ๋ค๊ณ ๋ณผ ์ ์๋ค. ํ์ง๋ง ์ฐจ์ด์ ์ ๊ฐ์๋จธ์ ๋ณด๋ค ๋ ๋น ๋ฅด๊ณ ์์์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ๋ค.
์๋์ ์ฌ์ง์ ๋ณด๊ฒ๋๋ฉด ์ผ์ชฝ์ ๊ฐ์๋จธ์ ์ด๊ณ ์ค๋ฅธ์ชฝ์ ๋์ปค์ด๋ค.
๋์ ์ฐจ์ด๋ ๊ฐ์๋จธ์ ์ ๊ฒฝ์ฐ, ๋์ปค์ ๋นํด ์ด์์ฒด์ ๊ฐ ๊ฐ๊ฐ ํ์ํ๊ธฐ ๋๋ฌธ์ ํจ์จ์ ์ด์ง ์์ง๋ง, ๋์ปค๋ ์ด์์ฒด์ ์ ์ค์น๊ฐ ํ์ํ์ง ์์ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์ฌ์ฉ์ด ๊ฐ๋ฅํ๋ค.