Volume๊ณผ Mount
Docker Conatiner์ ์ฐ์ฌ์ง ๋ฐ์ดํฐ๋ ์ปจํ ์ด๋๊ฐ ์ญ์ ๋ ๋ ํจ๊ป ์ฌ๋ผ์ง๋ค. ํ์ง๋ง ์ด์ ๊ด๊ณ์์ด ์ฐ๋ฆฌ๋ ๋ฐ์ดํฐ๋ฅผ ์์์ ์ผ๋ก ์ ์ฅํ ํ์๊ฐ ์๋ค. ๋ํ ์ฌ๋ฌ๊ฐ์ ์ปจํ ์ด๋๋ฅผ ์์ฑํ์ฌ ์ฌ์ฉํ ๊ฒฝ์ฐ, ํ๋์ ํด๋๋ฅผ ๊ณต์ ํด์ผ ํ๋ ์ผ์ด ๋น๋ฒํ๋ค.
์ด๋ฌํ ํ์์ฑ์ ๋ํด Docker๋ ๋๊ฐ์ง ์ต์
์ ์ ๊ณตํ๋ค. ์ฒซ์งธ๊ฐ Volume
, ๋์งธ๊ฐ Mount
์ด๋ค.
Volume
์ด ๋ฐฉ๋ฒ์ Docker์์ ๊ถ์ฅํ๋ ๋ฐฉ๋ฒ์ด๋ค.
Volume์ ์์ฑ
Volume์ ์กฐํ
Mountpoint
๋ฅผ ๋ณด๋ฉด ํด๋น ๋ณผ๋ฅจ์ด ์ด๋์ ์๋์ง ์ ์ ์๋ค.
๋ณผ๋ฅจ์ ์ปจํ ์ด๋์ ๋ง์ดํธํ๊ธฐ
docker run -v <๋ณผ๋ฅจ ์ด๋ฆ>:<์ปจํ
์ด๋ ๋ด์ ์ ๋ ๊ฒฝ๋ก> --name <์ปจํ
์ด๋ ์ด๋ฆ> <image ์ด๋ฆ> <๋ช
๋ น> <ํ๋ผ๋ฏธํฐ>
ํ์์ผ๋ก ๊ตฌ์ฑ๋์ด ์๋ค.
์ค์ ๋ก ์์ฑ๋ ์ปจํ ์ด๋๋ฅผ ์กฐ์ฌํ๋ฉด ๋ค์๊ณผ ๊ฐ์ด ๋จ๋ฉฐ, Type์ด volume์ผ๋ก ์ง์ ๋ ๊ฒ์ ํ์ธํ ์ ์๋ค.
์ด๋ฌํ ๋ฐฉ๋ฒ์ ๋ค๋ฅธ ์ปจํ ์ด๋์ ๋ง์ดํธํ ๋์๋ ๋์ผํ๊ฒ ์ ์ฉ๋๋ค.
Volume ์ญ์
์ญ์ ํ ๋๋ mount ๋ ์ปจํ ์ด๋๋ฅผ ๋ชจ๋ ์ญ์ ํ ๋ค์์ผ ์ญ์ ๊ฐ ๊ฐ๋ฅํ๋ค.
์ญ์ ๋ฅผ ์ํํ๋ค๋ฉด ์๋ฌ๊ฐ ๋จ์ง ์์ ๊ฒ์ด๋ค.
Volume ์ฒญ์
๋ง์ดํธ ๋์ง ์์ ๋ชจ๋ ๋ณผ๋ฅจ์ ํ๋ฒ์ ์ ๋ฆฌํ ์ ์๋ค.
Bind-Mount
์์ Volume
๋ฐฉ๋ฒ์ ๋ณด๋ฉด, ๊ฒฝ๋ก๋ฅผ docker๊ฐ ์ ์ํ ๊ฒฝ๋ก์ ๋ง์ถฐ์ ์์ฑ๋๋ค. ํ์ง๋ง ์์คํ
์ ํน์ ๊ฒฝ๋ก๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ์์
ํ๊ณ ์ถ์ ๊ฒฝ์ฐ๋ ๋ง๋ค. ์ด๋ฐ ํ์์ฑ์ ๋ํด docker๋ Bind-Mount
๋ฅผ ์ ๊ณตํ๋ค.
์ฌ์ฉ๋ฒ์ ๋งค์ฐ ๊ฐ๋จํ๋ค. ์์ Volume ๋ช ์ด ๋ค์ด๊ฐ๋ ์๋ฆฌ์, ์ํ๋ ํธ์คํธ ๊ฒฝ๋ก๋ฅผ ์ ์ด์ฃผ๋ ๊ฒ์ผ๋ก ๋๋๋ค.
์ด ๋ ์ญ์๋ container์ ์ ๋ ๊ฒฝ๋ก๋ฅผ ์จ์ฃผ์ด์ผ ํ๋ค.
Type
์ด bind
๋ก ๋ฌถ์ฌ์์์ ํ์ธํ ์ ์๋ค.
Volume vs Bind-Mount
๊ฒฝ๋ก(Mount Point) ๊ด๋ฆฌํด ์ค๊น? ๋ง๊น?
๋์ ๊ฐ์ฅ ํฐ ์ฐจ์ด์ ์, docker๊ฐ mount point๋ฅผ ๊ด๋ฆฌํด ์ฃผ๋๋์ ์ฌ๋ถ๋ก ๋๋๋ค. ๊ทธ๋ฅ ๋ง ์ฌ์ฉํ๊ณ ์ถ์ ๊ฒฝ์ฐ์ ๋ volume์ด ๋ง์ ์ ์์ง๋ง, ์ปจํ ์ด๋ํ๋ ๊ฐ๋ฐ ํ๊ฒฝ์ ๊ตฌ์ถํ๊ณ ์ถ์ ๋๋ bind-mount๊ฐ ๋ ์ ๋ฆฌํ๋ค.