Cloud Engineering/Docker ๐Ÿณ

1. link ์‚ฌ์šฉํ•˜๊ธฐ ๋„์ปค์—์„œ๋Š” ๊ฐ™์€ bridge ๋„คํŠธ์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ปจํ…Œ์ด๋„ˆ๋ผ๋ฆฌ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค. link๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ปจํ…Œ์ด๋„ˆ์˜ ์ด๋ฆ„ ๋˜๋Š” ๋ณ„์นญ์„ ์ง€์ •ํ•˜์—ฌ ํ†ต์‹ ํ•  ์ˆ˜ ์žˆ๋‹ค. link๋Š” '--link ์ปจํ…Œ์ด๋„ˆ_์ด๋ฆ„' ํ˜•ํƒœ๋กœ --link ์˜ต์…˜์„ ํ†ตํ•ด ์ง€์ •ํ•œ๋‹ค. ๋‹จ link๋กœ ์—ฐ๊ฒฐํ•ด์ค„ ์ปจํ…Œ์ด๋„ˆ๋Š” ์ด์ „์— ๋ฏธ๋ฆฌ ์ƒ์„ฑ๋˜์–ด์žˆ์–ด์•ผ ํ•œ๋‹ค. ์šฐ์„  web ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑํ•œ๋‹ค. [user@localhost ~]$ docker container run -d --name web3 httpd:latest 827c38ecb011516344191485c051299e72852146ecaf55ca57ee242d9bc688cc os6 ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹คํ–‰์‹œํ‚ค๋ฉด์„œ web3๋ฅผ ๋งํฌํ•œ๋‹ค. $docker run -idt os6 --link web3..
1. Docker Network ์•„ํ‚คํ…์ฒ˜ ๋„คํŠธ์›Œํฌ์™€ ์—ฐ๊ฒฐ๋  ์ˆ˜ ์žˆ๋Š” ๋„คํŠธ์›Œํฌ Docker Host ์˜ ๊ธฐ๋ณธ Bridge Network ์ธํ„ฐํŽ˜์ด์Šค : docker0 ๊ทธ๋ฆผ ์˜ˆ์‹œ๋กœ ๋ณด๋ฉด docker0์€ ํ˜ธ์ŠคํŠธ์˜ eth0 (192.168.0.2)์™€ ์—ฐ๊ฒฐ๋˜์–ด์žˆ๋‹ค. Docker Container ์˜ ๊ธฐ๋ณธ Bridge Network ์ธํ„ฐํŽ˜์ด์Šค : vethXXX 2. Docker Network ๊ด€๋ จ ๋ช…๋ น์–ด 2-1 Docker Network ์ƒ์„ธ ์ •๋ณด ํ™•์ธ docker network inspect NETWORK_NAME 2-2 Docker Network ์ƒ์„ฑ $ docker network create [OPTION] NETWORK_NAME ๋„์ปค๋Š” IP๋ฅผ 172.17.0.X ํ˜•ํƒœ๋กœ ์ˆœ์ฐจ์ ์œผ๋กœ IP๋ฅผ ๋‚˜๋ˆ ์ฃผ๊ฒŒ ๋œ๋‹ค. 2-3..
Docker Volume ๋„์ปค ๋ณผ๋ฅจ์€ ๋„์ปค์— ์˜ํ•ด์„œ ๊ด€๋ฆฌ๋˜๋Š” ์Šคํ† ๋ฆฌ์ง€์ด๋‹ค. ๋ณผ๋ฅจ์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™๋‹ค. ๋‹ค์ˆ˜์˜ ์ปจํ…Œ์ด๋„ˆ ์‚ฌ์ด ๋ฐ์ดํ„ฐ๋ฅผ ๊ณต์œ ํ•  ๋•Œ ์ปจํ…Œ์ด๋„ˆ์—์„œ ํ˜ธ์ŠคํŠธ ๊ตฌ์„ฑ์„ ๋ถ„๋ฆฌํ•  ๋•Œ ์ปจํ…Œ์ด๋„ˆ ๋ฐ์ดํ„ฐ๋ฅผ ์›๊ฒฉ ํ˜ธ์ŠคํŠธ ๋˜๋Š” ํด๋ผ์šฐ๋“œ์— ์ €์žฅํ•˜๊ณ  ์‹ถ์„ ๋•Œ ๋‹ค๋ฅธ ํ˜ธ์ŠคํŠธ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ๋ฐฑ์—… ๋ฐ ๋ณต์›ํ•  ๋•Œ Docker Volume ์ƒ์„ฑ docker volume create NAME ์ƒ์„ฑ๋œ ๋ณผ๋ฅจ๋“ค์€ /var/lib/docker/volumes ์— ์ €์žฅ๋œ๋‹ค. Docker Volume ๋ชฉ๋ก ํ™•์ธ docker volume ls Docker Volume ์ƒ์„ธ ์ •๋ณด ํ™•์ธ docker volume inspect NAME Docker Volume ์ปจํ…Œ์ด๋„ˆ์— ์—ฐ๊ฒฐํ•˜๊ธฐ -v ์˜ต์…˜์„ ๋ถ™์—ฌ์„œ ๋„์ปค ๋ณผ๋ฅจ์— ์—ฐ๊ฒฐํ•ด์•ผ ํ•œ๋‹ค. docker r..
๋„์ปค์˜ ์ปจํ…Œ์ด๋„ˆ ๋‚ด์—์„œ ์ƒ์„ฑ๋˜๋Š” ๋ฐ์ดํ„ฐ๋Š” ๋Ÿฐํƒ€์ž„ ๋ฐ์ดํ„ฐ์ด๋‹ค. ์ฆ‰, ์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์‚ญ์ œ๋˜๋ฉด ๋ฐ์ดํ„ฐ๋“ค๋„ ํ•จ๊ป˜ ์‚ญ์ œ๋œ๋‹ค. ๋”ฐ๋ผ์„œ ์˜๊ตฌ์ ์ธ ๋ชฉ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ์ปจํ…Œ์ด๋„ˆ์— ์ €์žฅํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, ์ปจํ…Œ์ด๋„ˆ์˜ ์™ธ๋ถ€ ๋ฉ”๋ชจ๋ฆฌ์— ๋งˆ์šดํŠธ ์‹œํ‚จ ํ›„ ๋ฉ”๋ชจ๋ฆฌ์— ์ €์žฅ์„ ํ•˜๋Š” ๊ฒƒ์„ ๊ถŒํ•œ๋‹ค. Bind Mount ํ˜ธ์ŠคํŠธ์˜ ํŒŒ์ผ ๋””๋ ‰ํ† ๋ฆฌ์™€ ์ปจํ…Œ์ด๋„ˆ์˜ ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์—ฐ๊ฒฐํ•˜๋Š” ๋ฐฉ์‹์ด๋‹ค. ๊ทธ๋ ‡์ง€๋งŒ Bind Mount๋Š” ๋„์ปค์— ์˜ํ•ด์„œ ๊ด€๋ฆฌ๋˜์ง€ ์•Š์œผ๋ฉฐ ํ˜ธ์ŠคํŠธ์˜ ํŒŒ์ผ์‹œ์Šคํ…œ์— ๋Œ€ํ•ด ์˜์กด์ ์ด๋‹ค. ๋˜ํ•œ ํ˜ธ์ŠคํŠธ์˜ ๋ฏผ๊ฐํ•œ ํŒŒ์ผ๊นŒ์ง€ ์ ‘๊ทผ๊ฐ€๋Šฅํ•˜๋ฏ€๋กœ ๋ณด์•ˆ์— ์ทจ์•ฝํ•˜๋‹ค๋Š” ๋ฌธ์ œ์ ์ด ์žˆ๋‹ค. Bind Mount ๋Š” ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑํ•˜๊ฑฐ๋‚˜ ์‹คํ–‰์„ ์‹œ์ž‘ํ•  ๋•Œ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ์ด๋ฏธ ์‹คํ–‰์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ์—๋Š” Bind Mount๋กœ ์—ฐ๊ฒฐ์‹œํ‚ฌ ์ˆ˜ ์—†๋‹ค. ๋ช…๋ น์–ด๋Š” docker ru..
Docker Container ๋‚ด๋ถ€๋กœ ์—ฐ๊ฒฐ (attach) $ docker container attach CONTAINER $ docker attach CONTAINER attach ๋ช…๋ น์–ด ์‚ฌ์šฉ์€ ๊ถŒ์žฅ๋˜์ง€ ์•Š๋Š”๋‹ค ๊ทธ ์ด์œ ๋Š” attach ๋ช…๋ น์–ด ์‹คํ–‰ํ›„ ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์— ์ง์ ‘ ์ ‘๊ทผํ•˜์—ฌ exitํ•˜๋ฉด ์‹ค์ œ ์šด์˜์ค‘์ธ ์„œ๋น„์Šค๊ฐ€ ์ค‘๋‹จ๋  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. → ์—„์ฒญ๋‚œ ๋ฌธ์ œ๊ฐ€ ์ƒ๊น€ ! [์˜ˆ์‹œ] attach ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์ปจํ…Œ์ด๋„ˆ centos7-10์— ์ง์ ‘ ์ ‘๊ทผํ•˜์—ฌ ์‹คํ–‰ํ•œ๋‹ค. [root@localhost ~]# docker start centos7-10 centos7-10 [root@localhost ~]# docker attach centos7-10 [root@164145c46559 /]# ls anaconda-post...
1. Docker Container ํ™˜๊ฒฝ๋ณ€์ˆ˜ ์„ค์ •ํ•˜๊ธฐ docker container run -it --name CONTAINER_NAME -e VAR=VALUE IMAGE 2. Docker Container CPU ์ œํ•œ $ docker container run -it —name CONTAINER_NAME —cpus NUM IMAGE [์˜ˆ์‹œ] ์—ฌ๊ธฐ์„œ NUM์€ CPU์˜ ๊ฐœ์ˆ˜๋ฅผ ์˜๋ฏธํ•˜๋ฉฐ 1 == 100%, 0.2 == 20% ์ด๋‹ค. --cpus ์˜ต์…˜์œผ๋กœ CPU ์‚ฌ์šฉ๋Ÿ‰์„ 20%๋กœ ์ œํ•œํ•œ ํ›„ dd ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ๋ถ€ํ•˜๋ฅผ ๋ฐœ์ƒ์‹œํ‚จ๋‹ค. docker stats๋กœ ํ˜„์žฌ CPU์‚ฌ์šฉ๋Ÿ‰์„ ํ™•์ธํ•ด๋ณด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด 20% ์— ๊ฐ€๊น๊ฒŒ ์‚ฌ์šฉ๋ฅ ์ด ์ œํ•œ๋ฐ›๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. 3. Docker Container ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œํ•˜๊ธฐ doc..
1. Docker Container ํ˜„์žฌ ์‹คํ–‰์ค‘์ธ ๋ชฉ๋ก ํ™•์ธ $ docker ps $ docker container ls 2. Docker Container ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ ํŒŒ์ผ ๋ชฉ๋ก ํ™•์ธ $ docker ps -a $ docker container ls -a ํ˜„์žฌ Docker ํ˜ธ์ŠคํŠธ์— ์กด์žฌํ•˜๋Š” ๋ชจ๋“  ์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก์ด ๋ณด์ธ๋‹ค. 3. Docker Container ์ƒ์„ฑ $ docker container create —name CONTAINER IMAGE_REPO:TAG $ docker create —name CONTAINER IMAGE_REPO:TAG ๋‘ ๋ช…๋ น์–ด๋Š” ๋™์ผํ•˜๋‹ค. docker create ๋ช…๋ น์–ด์˜ ์˜ต์…˜ -i : ์ปจํ…Œ์ด๋„ˆ์—์„œ ํ‘œ์ค€ ์ž…๋ ฅ ์œ ์ง€ํ•˜๊ธฐ -t : ์ปจํ…Œ์ด๋„ˆ์˜ ๊ฐ€์ƒ ํ„ฐ๋ฏธ๋„ ์ง€์ • --name : ์ปจ..
1. Docker Container Image ๋‹ค์šด๋กœ๋“œ $ docker image pull IMAGE $ docker pull IMAGE_REPO:TAG ๋‘˜๋‹ค ๋™์ผํ•œ ๋ช…๋ น์–ด์ด๋‹ค. 2. Docker Image ํŒŒ์ผ์„ layer๋‹จ์œ„๋กœ ์•„์นด์ด๋ธŒ ์ด๋ฏธ์ง€๋ฅผ layer๋‹จ์œ„๋กœ tarํŒŒ์ผ์— ์ €์žฅํ•˜๋Š” ๋ช…๋ น์–ด์ด๋‹ค. ๋‘˜๋‹ค ๋™์ผํ•œ ๋ช…๋ น์–ด์ด๋‹ค. $ docker image save -o TAR_FILE IMAGE_REPO:TAG $ docker save -o TAR_FILE IMAGE_REPO:TAG 3. tar ํŒŒ์ผ์„ Docker์— ๋กœ๋“œํ•˜๊ธฐ $ docker load -i TAR_FILE:TAG.tar .tar ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ  ? ์ธํ„ฐ๋„ท๊ณผ ์—ฐ๊ฒฐ๋˜๋Š” ๊ฒฝ์šฐ ๋„์ปคํ—ˆ๋ธŒ์—์„œ ๋ฐ›์•„์˜ค๋ฉด ๋˜๋Š”๋ฐ ์„œ๋ฒ„๋ฅผ ์šด์˜ํ•  ๋•Œ ์™ธ๋ถ€ ๋„คํŠธ์›Œํฌ์™€ ์—ฐ๊ฒฐ์„ ..
minjiwoo
'Cloud Engineering/Docker ๐Ÿณ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (2 Page)