์ด๋ฏธ์ง๋น๋๋?
์ด๋ฏธ์ง๊ฐ ์ด๋ป๊ฒ ์ ์ฅ๋๋์ง, ์ด๋ฏธ์ง๋ฅผ ํจ์จ์ ์ผ๋ก ์ ์ฅํ๋ ๋ ์ด์ด๋ ๊ตฌ์กฐ
์ด๋ฏธ์ง๋ฅผ ๋ง๋๋ ๋ฐฉ๋ฒ: ์ปค๋ฐ, ๋น๋
- ๋น๋ ์ํด์ ๋์ปค ํ์ผ์ด๋ผ๋ ๋ช ์ธ์ ์์ฑ
- ๋ ํจ์จ์ ์ธ ์ด๋ฏธ์ง ๋น๋ ๋ฐฉ์: ๋ฉํฐ ์คํ ์ด์ง ๋ฐฉ์
1. ์ด๋ฏธ์ง์ ๋ ์ด์ด
์ด๋ฏธ์ง๋ ์ปจํ ์ด๋ ์คํ ์ํ ์ฝ๊ธฐ ์ ์ฉ ํ์ผ์ด๋ฉฐ, ๋์ปค ์ด๋ฏธ์ง๋ ๋ ์ด์ด๋ ํ์ผ ์์คํ ์ผ๋ก ๊ตฌ์ฑ๋๋ค.
๋ ์ด์ด๋ ์ฌ๋ฌ๊ฐ์ ์ธต์ผ๋ก ๊ตฌ์ฑ๋ ๊ฒ ์ค ํ๋์ ์ธต์ผ๋ก, ๋ ์ด์ด๋ ๊ตฌ์กฐ๋ ์ฌ์ฌ์ฉํ๊ธฐ ์ข์ ๊ตฌ์กฐ์ด๋ค.
์ด ๋ ์ด์ด๋ค์ด ๋ชจ์ฌ์ ํ๋์ ์ด๋ฏธ์ง๋ก ๊ตฌ์ฑ๋๋ ๊ฒ์ด๋ค. ์ฆ, ๊ฐ ๋ ์ด์ด๋ ์ด๋ฏธ์ง์ ์ผ๋ถ๋ถ์ด๋ค.
- ์ ํ๋์ ์ด๋ฏธ์ง๋ฅผ ์ฌ๋ฌ ๋ ์ด์ด๋ก ๊ตฌ์ฑํ ๊น?
๊ณต๊ฐ์ ํจ์จ์ ์ผ๋ก ์ฌ์ฉํ ์ ์์ด ์ด๋ฏธ์ง ์ ์ฅ&์ ์ก ์ ์คํ ๋ฆฌ์ง์ ๋คํธ์ํฌ ์ฌ์ฉ๋์ ์ ์ฝํ ์ ์๋ค.
๊ฑด์ถ๋๋ฉด์ ์๊ฐํ์
ํฌ๋ช ํ ๋๋ฉด์ ์ฌ๋ฌ ์ฅ ์ค๋นํ์ฌ ๊ฐ ์ฃผ์ ๋ณ๋ก ํ์ฅ์ฉ ๊ทธ๋ ค ์ด ์ฉ์ง๋ค์ ํฉ์น๋ฉด ํ๋์ ๊ฑด๋ฌผ์ ๋ํ ์ค๊ณ๋๊ฐ ์์ฑ๋๋ค.
์ ๊ธฐ ๋ถ๋ถ์ ๋ณ๊ฒฝ์ฌํญ์ด ์๋ค๋ฉด ์ฌํ์ฉ์ด ์ ๋ฆฌํ ๊ตฌ์กฐ์ด๋ค. ๋๋ฉด ์ ์ฒด๋ฅผ ๋ณ๊ฒฝํ๋ ๊ฒ์ด ์๋๋ผ ์ ๊ธฐ ๊ด๋ จ ๋๋ฉด๋ง ๋ณ๊ฒฝํ๋ฉด ๋๋ค.
๋ํ ์ค๊ณ๋ A์ B๊ฐ ์ ๊ธฐ ๋ถ๋ถ๋ง ๋ค๋ฅด๋ค๊ณ ํ์์ ๋, ๊ฒน์น๋ ๋๋จธ์ง ๋ ์ด์ด๋ ์ฌ์ฌ์ฉํ ์ ์๋ค.
์ฆ, ๋ ์ด์ด๋ ๊ตฌ์กฐ์ด๋ฉด ๋๋จธ์ง ๊ฒน์น๋ ๊ตฌ์กฐ๋ฅผ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
์ด๋ฏธ์ง ๋ ์ด์ด๋ ์ง์ ๋จ๊ณ ๋ ์ด์ด์ ๋ณ๊ฒฝ ์ฌํญ๋ง ์ ์ฅ๋๋ค.
์์ ๊ทธ๋ฆผ์ฒ๋ผ ์๋ฒ์ ๊ฐ๋จํ ํ์ด์ง๋ฅผ ์ถ๋ ฅํ๋ Nginx๋ฅผ ์ค์นํ๋ค๊ณ ์๊ฐํด๋ณด์.
๋จผ์ OS๋ฅผ ์ค์นํ๊ณ Nginx ์ํํธ์จ์ด๋ฅผ ์ค์นํ๋ค. ์ด๋, OS์ ํน์ ํด๋์ Nginx ์ํํธ์จ์ด ๊ด๋ จ๋ ํ์ผ๋ค์ด ์ถ๊ฐ๋๊ณ ์ด๋ ๊ฒ ๊ธฐ์กด ๋ ์ด์ด์์ ๋ณ๊ฒฝ๋๋ ๊ฒ๋ค์ ๊ธฐ์กด ๋ ์ด์ด๋ฅผ ์์ ํ๋ ๊ฒ์ด ์๋๋ผ ๊ธฐ์กด ๋ ์ด์ด ์์ ๋ณ๊ฒฝ๋ ๋ด์ฉ๋ค์ด ์๋ก์ด ๋ ์ด์ด๋ก ์ ์ฅ๋๋ค.
๊ทธ๋์ ๊ธฐ์กด OS ํ์ผ์์คํ ์ Nginx์ํํธ์จ์ด๊ฐ ์ถ๊ฐ๋ ๋ถ๋ถ๋ง ๋ฐ๋ก ๊ฐ์ง๊ณ ์๊ณ , ์ด์ ๋ ์ด์ด์ ๋น๊ตํด์ ์ถ๊ฐ๋๊ฑฐ๋ ๋ณ๊ฒฝ๋ ๋ถ๋ถ๋ง ๋ค์ ๋ ์ด์ด๋ก ์ ์ฅ๋๋ค.
์ด๋ฏธ์ง์์ ํ ๋ฒ ์ ์ฅ๋ ๋ ์ด์ด๋ ๋ณ๊ฒฝ๋ถ๊ฐ, ๋ณ๊ฒฝ์ฌํญ ์์ ์ ์๋ก์ด ๋ ์ด์ด๋ก ์ ์ฅํด์ผ ํ๋ค.
์ด๋ฒ์๋ index.html๊น์ง ์ด๋ฏธ์ง A๋ฅผ ์์ฑ ํ์๋๋ฐ, ์ด๋ฏธ์ง B๋ฅผ ์๋ก๋ง๋ ๋ค๊ณ ํด๋ณด์, ์ ์ฒด ๊ณผ์ ์ ๋๊ฐ๊ณ , ๋ง์ง๋ง ๋จ๊ณ์์ index.html์ ๋ณ๊ฒฝํ๋ ๊ฒ์ด๋ค.
์ด๋ ๊ทธ์ ๋จ๊ณ๊น์ง๋ ๋์ผํ๊ฒ ์ค์ ํ๋ฉด ๊ฐ์ ๋ ์ด์ด๋ฅผ ์ฌ์ฌ์ฉํ๊ฒ ๋๋ค. ๋ง์ง๋ง index.html ๋ ์ด์ด๋ง ์๋กญ๊ฒ ์ถ๊ฐํ์ฌ ์ด๋ฏธ์ง B๊ฐ ์์ฑ๋๋ค.
์ ๋ฆฌํ๋ฉด ์ด๋ฏธ์ง ๋ ์ด์ด๋ ์์ฐจ์ ์ผ๋ก ์์ด๊ณ , ๊ฐ ๋ ์ด์ด๋ ์ด์ ๋ ์ด์ด์์ ๋ณ๊ฒฝ๋ ๋ถ๋ถ์ ์ ์ฅํ๊ณ ์๋ค. ๊ฐ์ ๋ณ๊ฒฝ์ด ์ผ์ด๋ ๋ ์ด์ด๋ ๊ณต์ ํด์ ์ฌ์ฌ์ฉ ๊ฐ๋ฅํ๋ค.
์ด๋ฏธ์ง ๋ ์ด์ด๋ ์ด์ ํ์ผ์ ์ ๋ณ๊ฒฝ๋ ์ฌํญ์ ์ ์ฅํ๊ธฐ์ ๊ตฌ์ฑ ์์๊ฐ ๋ค๋ฅด๋ฉด ์์ ํ ๋ค๋ฅธ ๋ ์ด์ด๋ก ๊ตฌ์ฑ๋๋ ๊ฒ์ด๋ค.
์ ๋ฆฌํ๋ฉด
- ๋ ์ด์ด๋ง: ๊ฐ ๋ ์ด์ด๋ ์ด์ ๋ ์ด์ด ์์ ์์ด๋ฉฐ, ์ฌ๋ฌ ์ด๋ฏธ์ง ๊ฐ ๊ณต์ ๋ ์ ์๋ค. ๋ ์ด์ด ๋ฐฉ์์ ์ค๋ณต ๋ฐ์ดํฐ๋ฅผ ์ต์ํํ๊ณ , ๋น๋ ์๋๋ฅผ ๋์ด๋ฉฐ, ์ ์ฅ์๋ฅผ ํจ์จ์ ์ผ๋ก ์ฌ์ฉ ๊ฐ๋ฅ
- Copy-on-Write: ๋ค์ ๋ ์ด์ด์์ ์ด์ ๋ ์ด์ด ์์ ์, ํด๋น ํ์ผ์ ๋ณต์ฌ๋ณธ์ ๋ง๋ค์ด์ ๋ณ๊ฒฝ ์ฌํญ์ ์ ์ฉ
- ๋ถ๋ณ ๋ ์ด์ด: ์ด๋ฏธ์ง์ ๊ฐ ๋ ์ด์ด๋ ๋ถ๋ณ -> ์ด๋ฏธ์ง์ ์ผ๊ด์ฑ ์ ์ง
- ์บ์ฑ: ๋ ์ด์ด ์บ์๋ฅผ ํตํด, ์ด๋ฏธ ๋น๋๋ ๋ ์ด์ด ์ฌ์ฌ์ฉ ๊ฐ๋ฅ
2. ์ด๋ฏธ์ง ์ปค๋ฐ
์ด๋ฏธ์ง๋ฅผ ๋ง๋๋ 2๊ฐ์ง ๋ฐฉ์
- ์ปค๋ฐ: ํ์ฌ ์ปจํ ์ด๋์ ์ํ๋ฅผ ์ด๋ฏธ์ง๋ก ์ ์ฅ
- ๋น๋: Dockerfile์ ํตํด ์ด๋ฏธ์ง๋ฅผ ์ ์ฅ
- docker run -it —name ์ปจํ ์ด๋๋ช ์ด๋ฏธ์ง๋ช bin/bash: ์ปจํ ์ด๋ ์คํ๊ณผ ๋์์ ํฐ๋ฏธ๋ ์ ์, ์ด๋ฏธ์ง ๋ด๋ถ์ ํ์ผ ์์คํ ์ ํ์ธํ๊ฑฐ๋ ๋๋ฒ๊น ํ๋ ์ฉ๋
- docker commit -m ์ปค๋ฐ๋ช ์คํ์ค์ธ์ปจํ ์ด๋๋ช ์์ฑํ ์ด๋ฏธ์ง๋ช : ์คํ ์ค์ธ ์ปจํ ์ด๋๋ฅผ ์ด๋ฏธ์ง๋ก ์์ฑ
'๐ณ์ธํ๋ผ > Docker' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์ฟ ๋ฒ๋คํฐ์ค (1) | 2024.09.11 |
---|---|
์๋ฒ ๊ฐ์ํ (0) | 2024.09.06 |
3. ์ด๋ฏธ์ง ๋ ์ง์คํธ๋ฆฌ (1) | 2024.08.31 |
1. ๊ฐ์ํ ๊ธฐ์ (0) | 2024.07.01 |
0. Docker (0) | 2024.07.01 |