๐ Docker ์ ๋ฌธ 3 - File๊ณผ Volume
๐ Docker ์
๋ฌธ 3 - File๊ณผ Volume
๐
ใ๊ทธ๋ฆผ๊ณผ ์ค์ต์ผ๋ก ๋ฐฐ์ฐ๋ Docker & ์ฟ ๋ฒ๋คํฐ์คใ๋ฅผ ์ฝ๊ณ ์ ๋ฆฌํ ๊ธ์ ๋๋ค.
Container์ ํธ์คํธ ๊ฐ ํ์ผ ๋ณต์ฌ
1
2
3
4
# ์ปจํ
์ด๋ โ ํธ์คํธ
docker cp ์ปจํ
์ด๋_์ด๋ฆ:์ปจํ
์ด๋_๊ฒฝ๋ก ํธ์คํธ_๊ฒฝ๋ก
# ํธ์คํธ โ ์ปจํ
์ด๋
docker cp ํธ์คํธ_๊ฒฝ๋ก ์ปจํ
์ด๋_์ด๋ฆ:์ปจํ
์ด๋_๊ฒฝ๋ก
- ํ์ผ ๋ณต์ฌ๋
Container์์ ํธ์คํธ๋ก, ํธ์คํธ์์Container๋ก ์๋ฐฉํฅ ๋ชจ๋ ๊ฐ๋ฅํ๋ค. mv๋ก ํ์ผ๋ช ์ ๋ณ๊ฒฝํ๊ฑฐ๋rm๋ก ํ์ผ์ ์ญ์ ํ ์๋ ์๋ค.
Volume๊ณผ Mount
Volume์ ์คํ ๋ฆฌ์ง์ ํ ์์ญ์ ๋ถํ ํ ๊ฒ์ด๋ค.Mount๋ ๋์์ ์ฐ๊ฒฐํด ์ด์์ฒด์ ์ ๊ด๋ฆฌ ํ์ ๋๋ ๊ฒ์ด๋ค.- ์ค์ ๋ก
Container๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด ์คํ ๋ฆฌ์ง ์์ญ์Mountํด์ผ ํ๋ค. - ์๋ํ๋ฉด ๋ฐ์ดํฐ๊ฐ ์ด ์คํ ๋ฆฌ์ง์ ์๊ธฐ ๋๋ฌธ์
Mount๋ฅผ ํ์ง ์์ผ๋ฉดContainer๋ฅผ ์ญ์ ํ ๋ ๊ฐ์ด ์ญ์ ๋์ด ๋ฒ๋ฆฐ๋ค. Container๋ ์์ฑ ๋ฐ ํ๊ธฐ๊ฐ ๋งค์ฐ ๋น๋ฒํ๊ธฐ ๋๋ฌธ์ ๋งค๋ฒ ๋ฐ์ดํฐ๋ฅผ ์ฎ๊ธฐ๋ ๋์Container์ธ๋ถ์ ๋ ๋ฐ์ดํฐ์ ์ ๊ทผํด ์ฌ์ฉํ๋ ๊ฒ์ด๋ค.- ์ด๋ฅผ ๋ฐ์ดํฐ ํผ์์คํด์๋ผ๊ณ ํ๋ค.
Mount๋run์ปค๋งจ๋์ ์ต์ ํํ๋ก ์ง์ ํ๋ค.
โ
Volume Mount
1
docker run -v ๋ณผ๋ฅจ_์ด๋ฆ:์ปจํ
์ด๋_๋ง์ดํธ_๊ฒฝ๋ก
Docker์์ง์ด ๊ด๋ฆฌํ๋ ์์ญ ๋ด์ ๋ง๋ค์ด์งVolume์Container์ ๋์คํฌ ํํ๋กMountํ๋ค.- ์์ฃผ ์ฐ์ง๋ ์์ง๋ง ์ง์ฐ๋ฉด ์ ๋๋ ํ์ผ์
Mountํ๋ค. DockerContainer๋ฅผ ๊ฒฝ์ ํ์ง ์๊ณ ์ง์ Volume์ ์ ๊ทผํ ๋ฐฉ๋ฒ์ด ์๋ค.
โ
Bind Mount
1
docker run -v ์คํ ๋ฆฌ์ง_์ค์ _๊ฒฝ๋ก:์ปจํ
์ด๋_๋ง์ดํธ_๊ฒฝ๋ก
Docker๊ฐ ์ค์น๋ ์ปดํจํฐ์ ๋ฌธ์ ํด๋ ๋๋ ๋ฐํํ๋ฉด ํด๋ ๋ฑDocker์์ง์์ ๊ด๋ฆฌํ์ง ์๋ ์์ญ์ ๊ธฐ์กด ๋๋ ํฐ๋ฆฌ๋ฅผContainer์Mountํ๋ค.- ํด๋ ์์ ํ์ผ์ ์ง์ ๋๊ฑฐ๋ ์ด์ด๋ณผ ์ ์๊ธฐ ๋๋ฌธ์ ์์ฃผ ์ฌ์ฉํ๋ ํ์ผ์ ๋๋ ๋ฐ ์ฌ์ฉํ๋ค.
Volume ์ปค๋งจ๋
1
2
3
4
5
6
# `Volume` ์์ฑ
docker volume create ๋ณผ๋ฅจ_์ด๋ฆ
# `Volume` ์ญ์
docker volume rm ๋ณผ๋ฅจ_์ด๋ฆ
# `Volume` ์์ธ์ ๋ณด ํ์ธ
docker volume inspect ๋ณผ๋ฅจ_์ด๋ฆ
์ฌํ - Volume ๋ฐฑ์
1
2
docker run --rm -v ๋ณผ๋ฅจ_์ด๋ฆ:/source -v ๋ฐฑ์
_์ ์ฅ_ํด๋๋ช
:/target ์ปจํ
์ด๋_์ด๋ฆ
tar cvzf /๊ฒฝ๋ก/ํ์ผ๋ช
.tar.gz -C /source .
tar -Cย ย A B๋ย ย A๋ก ์ด๋ํ์ฌ B์ ํ์ผ์ ์์ถํ๋ ์ปค๋งจ๋๋ค.
์ฌํ - ๋ฐฑ์ ์ ๋ณต์
1
2
docker run --rm -v ๋ณผ๋ฅจ_์ด๋ฆ:/source -v ๋ฐฑ์
_์ ์ฅ_ํด๋๋ช
:/target ์ปจํ
์ด๋_์ด๋ฆ
tar xvzf /๊ฒฝ๋ก/ํ์ผ๋ช
.tar.gz -C /source
This post is licensed under CC BY 4.0 by the author.
