๐ ํด๋น ํฌ์คํ ์ ์๋์ ๊ฐ์๋ฅผ ๊ณต๋ถํ ๋ด์ฉ์ ๊ธฐ๋กํ์์ต๋๋ค.
https://www.inflearn.com/course/%EB%8F%84%EC%BB%A4-%EC%9E%85%EB%AC%B8/dashboard
๋ชฉ์ฐจ
1. ๋์ปค๋?
2. ์ต๊ทผ ๊ฐ๋ฐ์๋ค์ด ๋์ปค์ ์ด๊ดํ๋ ์ด์
3. ๋์ปค๋ฅผ ์คํํ๋ ์์ ์ํฉ
4. ๊ฐ์๋จธ์ (Virtual Machine)๊ณผ์ ์ฐจ์ด
1. ๋์ปค๋?
๊ฐ๋ตํ ์ค๋ช ํ์๋ฉด, ์ปจํ ์ด๋ ๊ธฐ๋ฐ์ ์คํ์์ค ๊ฐ์ํ ํ๋ซํผ์ด๋ค.
์ฌ๊ธฐ์ ์ฃผ์๊น๊ฒ ๋ณผ ๋จ์ด๋ '์ปจํ ์ด๋'์ด๋ค.
์์ธํ ๊ฐ๋ ์ ๋ํด์๋ ์๋์ ๋ฌธ์์์ ์ฐธ๊ณ ํ์.
https://www.redhat.com/ko/topics/containers/what-is-docker
๋์ปค๋ ๊ธฐ์กด์ ๋ฌธ์ ์ ์ ํด๊ฒฐํ๊ธฐ ์ํด ๋ฑ์ฅํ๊ฒ ๋์๋ค.
๊ทธ๋ผ ์ด๋ค ๋ฌธ์ ์ผ๊น?
2. ์ต๊ทผ ๊ฐ๋ฐ์๋ค์ด ๋์ปค์ ์ด๊ดํ๋ ์ด์ - ๊ธฐ์กด ์๋ฒ ๊ด๋ฆฌ์ ๋ฌธ์ ์
์์ ์ด๋ฏธ์ง์ฒ๋ผ ์์ฌ๊ธฐ๋ฅผ ์๋์ํค๊ธฐ ์ํด ๋จ์ํ ์ฝ์ผํธ์ ์ฝ๋๋ฅผ ๊ฝ๋ ๊ฒ์ด ์๋๋ผ ์ ์๋ง์ ๊ณผ์ ์ ํตํด ๋์์์ผ์ผ ํ๋ค๋ฉด ์ผ๋ง๋ ์ํ์ฑ๋ ๋๊ณ ๋ถํธํ๊ฒ ๋๊ฐ?
์ด์ฒ๋ผ ๋ณต์กํ ๊ณผ์ ์ค์์ ํ๋๋ผ๋ ์ ๋๋ก ์๋ํ์ง ์์ผ๋ฉด ๊ธฐ๋ฅ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ๋ฐ์ ์๊ณ ,
๊ธฐ์กด์ ์๋ฒ๋ ๋ง์ฐฌ๊ฐ์ง๋ก ์ ๋๋ก ์๋ํ๋ ๊ฒ ์ฒ๋ผ ๋ณด์ด์ง๋ง ์๋ด๋ ๊ต์ฅํ ๋ณต์กํ๊ฒ ๊ตฌ์ฑ๋์ด์๋ค.
์ ํต์ ์ธ ์๋ฒ๊ด๋ฆฌ ๋ฐฉ์
- ์ ์ ์ถ๊ฐ
- ์์คํ ํ๊ฒฝ ๋ณ์ ์ถ๊ฐ
- ๋ฐฉํ๋ฒฝ ์ถ๊ฐ
- ๋คํธ์ํฌ ์ค์
- dependencies ์ถ๊ฐ
- python(์ธ์ด)ํ๋ก๊ทธ๋จ ์ค์น
- git clone
- ํจํค์ง ์ค์น
- ์ค์
- DB ๋ง์ด๊ทธ๋ ์ด์
- ํ๋ก์ ์๋ฒ ์ค์น
- ํ๋ก๊ทธ๋จ run
๋ค์๊ณผ ๊ฐ์ด ์ฌ๋ฌ ๋จ๊ณ์ ๊ฑธ์น ๋ณต์กํ ์์ ์ ๋ค ๊ฑฐ์ณ์ผ๋ง ํ๋ก๊ทธ๋จ์ด ์คํ๋์๋ค.๐คฏ
์ค๋ผํด์ ์ค์นํ๊ณ , ๊น๋ฉ์ ์ค์นํ๊ณ , ์ด์ฉ๊ตฌ๋ฅผ ์ค์นํ๊ณ ...
์ฝ๊ฒ ์ค์น๊ฐ ๋๋ฉด ๋คํ์ด์ง๋ง ์ค์นํ๋ ๊ณผ์ ์์๋ ์ด๋ป๊ฒ ์ค์นํ๋์ง, ์ ์๋จ๋์ง, ๋ก๊ทธ์ธ์ ๋ ์ ์๋๋์ง ๋ฑ์ ์ฌ๋ฌ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์๋ค.
ํนํ ํ๋ก๊ทธ๋จ์ ์ค์นํ๋ ๊ฒ ๋ฟ๋ง ์๋๋ผ
์๋๋ AWS๋ฅผ ์ฐ๋ค๊ฐ ๊ฐ์๊ธฐ ์ ์ ๋ก, ๋ ๊ตฌ๊ธ ํด๋ผ์ฐ๋๋ก ์๋ฒํ๊ฒฝ์ด ๊ณ์์ ์ผ๋ก ๋ณ๊ฒฝ๋ ์ ์๊ณ ,
๋ด๋ถ ๊ฐ๋ฐํ์ด ์ฌ๋ฌ๊ฐ์ง ์ด์ ๋ก ์๋ Node.js๋ฅผ ์ฐ๋ค๊ฐ python์ผ๋ก, ํน์ Ruby๋ก ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ณ๊ฒฝํ๋ ค๋ ๊ฒฝ์ฐ์ฒ๋ผ
์๋ฒ๋ฅผ ๊ด๋ฆฌํ๋ค๋ ๊ฒ์ด ์ฝ์ง ์๋ค!!
์ด์ฒ๋ผ ๊ธฐ์กด์ ์๋ฒ ํ๊ฒฝ์ ๊ด๋ฆฌํ๊ธฐ์ ์์ฃผ ๋ณต์กํ๋ค๋ ๋ฌธ์ ๊ฐ ์์๋ค๐คฏ
๊ทธ๋ฌ๋ ์ด๋ฌํ ์๋ฒ์ ๋ฌธ์ ์ ์ ๋์ปค์ ๋ฑ์ฅ์ผ๋ก ํด๊ฒฐํ ์ ์์๊ณ , ์ต๊ทผ์๋ ์ปจํ ์ด๋์ ์ค์์ฑ์ด ๋ถ๊ฐ๋๋ฉด์ ๋์ปค๊ฐ ๊ฐ๊ด๋ฐ๊ธฐ ์์ํ์๋ค.
3. ๋์ปค๋ฅผ ์คํํ๋ ์์ ์ํฉ - ์๋ํ๋ ์ค๋ฅผ ์คํํ ๊ฒฝ์ฐ
์๋ํ๋ ์ค๋ผ๋ ์๋น์ค๋ php์ mysql๋ก ๋ง๋ค์ด์ก๋ค.
๊ทธ๋ ๋ค๋ฉด ์ผ๋ฐ์ ์ธ ๊ฒฝ์ฐ๋ผ๋ฉด ์๋ฒ์ php์ mysql์ ์ค์นํ๋ ์์ ์ด ํ์ํ๊ณ ,
์ค์น๋ฅผ ์๋ฃํด์ผ ์๋ฒ์์ ์ ์์ ์ผ๋ก ์๋ํ๋ ์ค๊ฐ ์คํ๋ ๊ฒ์ด๋ค.
๊ทธ๋ฌ๋ ๋์ปค๋ ์ด ์์ ์ ํ์์๊ฒ ๋ง๋ค์ด์ค๋ค.
php๋ mysql์ ์ค์นํ๋ ์์ ์์ด๋ ์๋ํ๋ ์ค๊ฐ ์คํ๋ ์ ์๊ณ , ๋ค๋ฅธ ๋ง๋ก ํ๋ฉด ํน์ ์๋น์ค๊ฐ ์ด๋ป๊ฒ ๋ง๋ค์ด์ ธ์๋์ง ๋ชจ๋ฅด๋ ๊ฒฝ์ฐ์๋ ์๋ฒ์์ ์คํ์ํฌ ์ ์๋ค๋ ๋ง์ด ๋๋ค.
๊ทธ๋งํผ ๋์ปค๋ ํธ๋ฆฌํ๊ณ ์ฝ๊ฒ ์๋ฒ ํ๊ฒฝ์ ๊ตฌ์ฑํ ์ ์๊ฒ ํ๋ค. ๐
4. ๊ฐ์๋จธ์ (Virtual Machine)๊ณผ์ ์ฐจ์ด
๋์ปค๋ ์๋ก ๋ค๋ฅธ ํ๋ก๊ทธ๋จ์ ์ปจํ
์ด๋๋ก ๋ง๋ค์ด๋๊ณ , ์ด๋ค ์๋ฒ์์๋ ํด๋น ์ปจํ
์ด๋๋ฅผ ์คํํ ์ ์๊ฒ ํ๋ค.
๊ทธ๋ผ ๊ฐ์๋จธ์ ๊ณผ ๋์ปค๋ฅผ ๋น๊ตํด๋ณด์.๐คทโ๏ธ
๋จผ์ ๊ฐ์๋จธ์ ์ด๋, ์ปดํจํฐ ์์คํ ์ ์๋ฎฌ๋ ์ด์ (๊ฐ์ํ์คํ)ํ๋ ์ํํธ์จ์ด์ด๋ฉฐ, VM์ด๋ผ๊ณ ๋ถ๋ฅธ๋ค.
๊ฐ์๋จธ์ ์์์ ์ด์ ์ฒด์ ๋ ์์ฉ ํ๋ก๊ทธ๋จ์ ์ค์นํ๊ณ ์คํํ ์ ์๋ค.
๊ฐ์๋จธ์ ์ ํ๋์ ๋ ๋ฆฝ๋ ์ปค๋ ๊ณต๊ฐ์ ๊ฐ์ง ์์ ํ ์ปดํจํฐ๋ฅผ ์์ฐํ๋ ๋ฐฉ์์ผ๋ก ํ๊ฒฝ์ ๊ตฌ์ฑํ๊ฒ ๋๋๋ฐ, ๊ทธ ๊ณต๊ฐ์ ๊ฐ๊ฐ์ OS(๊ฒ์คํธOS๋ผ๊ณ ํ๋ค.)๋ฅผ ํฌํจํ๊ธฐ ๋๋ฌธ์ ์ฉ๋์ด ๊ต์ฅํ ๋ฌด๊ฒ๋ค.
(๋ฌผ๋ก ๋ ๋ฆฝ๋ ๊ณต๊ฐ์์ ์์์ ํ ๋น๋ฐ์ ์ฌ์ฉํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ๋ณด์์ฑ์ผ๋ก๋ ํจ์จ์ ์ด๋ค.)
์๋ฌดํผ ์ด๋ฌํ ๊ฐ์๋จธ์ ์ ๋จ์ ์ ๋ณด์ํ ์ ์๋ ๋์ปค๊ฐ ๋ฑ์ฅํ์๋ค.
๋์ปค๋ ๊ฐ์๋จธ์ ๊ณผ ๋น์ทํ ๊ฐ๋ ์ด์ง๋ง ๋ค๋ฅธ ๊ธฐ๋ฅ์ ์ํํ๋ค.
๋์ปค๋ ์์ ๊ฐ๋ ์์๋ ์ธ๊ธ๋์๋ฏ์ด, '์ปจํ ์ด๋'๊ธฐ๋ฐ์ด๋ค.
์ปจํ ์ด๋๋ ๊ฒ์คํธOS๋ฅผ ๋ณ๋๋ก ์ค์นํ์ง ์๊ณ , ํธ์คํธOS๋ฅผ ๊ณต์ ํ๋ฉด์ ์ฌ๋ฌ ๊ฐ์ ์ปจํ ์ด๋๋ค์ด ์๋ก ์ํฅ์ ๋ฏธ์น์ง ์๋ ๋ ๋ฆฝ ๊ณต๊ฐ์์ ์คํ๋๊ฒ ํ๋ค.
๊ฒ์คํธOS๊ฐ ์์ผ๋ ๊ฐ๋ณ๊ธฐ๋ ํ๋ฉด์, ๊ธฐ์ ๋ค์ด ๋ ๋ฆฝ์ ์ผ๋ก ์ปจํ ์ด๋ ๊ณต๊ฐ์ ๋ง๋ จ๋์ด ์์ด ๊ฐ๊ฐ ํ์ํ ์์๋ค์ ํ ๋น๋ฐ์ ์คํ๋๊ธฐ ๋๋ฌธ์ ์ค๋ฒํค๋๊ฐ ์ ๋ค๋ ์ฅ์ ์ด ์๋ค.
๊ทธ๋์ ๊ฒฐ๋ก ์ ์ผ๋ก๋ . . .
๊ฐ์๋จธ์ ์ฒ๋ผ ๋ ๋ฆฝ์ ์ผ๋ก ์คํ๋๋ฉด์,
๊ฐ์๋จธ์ ๋ณด๋ค ๋น ๋ฅด๊ณ , ์ฝ๊ณ , ํจ์จ์ ์ด๋ค!
๐ ๋ค์ ๋ธ๋ก๊ทธ๋ฅผ ์ฐธ๊ณ ํ์์ต๋๋ค.
'DevOps > Docker' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Docker] ๋์ปค ์ด๋ฏธ์ง ๋ง๋ค๊ธฐ1 (0) | 2022.01.20 |
---|---|
[Docker] ๋์ปค ์ปดํฌ์ฆ ์ฌ์ฉํ๊ธฐ (0) | 2022.01.18 |
[Docker] network์์ฑ๊ณผ volume mount (-v) ๋ช ๋ น์ด (0) | 2022.01.18 |
[Docker] ๋์ปค ๊ธฐ๋ณธ ๋ช ๋ น์ด run ์ฌ์ฉํ๊ธฐ (windows) (0) | 2022.01.18 |
[Docker] ๋์ปค, ์ปจํ ์ด๋์ ํน์ง (0) | 2021.09.16 |
๋๊ธ