ย ๐Ÿณ Docker container deployment

SeungwooHong

@sat10am

2019. 08. 17

๐Ÿ“š INDEX

  • ์ด๋ฏธ์ง€์™€ ์ปจํ…Œ์ด๋„ˆ
  • ์ด๋ฏธ์ง€ ๋นŒ๋“œํ•˜๊ธฐ
  • ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ
  • ์ด๋ฏธ์ง€ ์•Œ์•„๋ณด๊ธฐ
  • ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ
  • ๋„์ปค ์ปดํฌ์ฆˆ

๐ŸŽฌ ์ด๋ฏธ์ง€์™€ ์ปจํ…Œ์ด๋„ˆ

๐ŸŽฌ ์ด๋ฏธ์ง€์™€ ์ปจํ…Œ์ด๋„ˆ

์ด๋ฏธ์ง€ -ย  ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๊ตฌ์„ฑํ•˜๋Š” ํŒŒ์ผ ์‹œ์Šคํ…œ๊ณผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ์„ค์ •์„ ํ•˜๋‚˜๋กœ ํ•ฉ์นœ ๊ฒƒ, ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒ์„ฑํ•˜๋Š” ํ…œํ”Œ๋ฆฟ

์ปจํ…Œ์ด๋„ˆ -ย  ์ด๋ฏธ์ง€๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์ƒ์„ฑ๋˜๋ฉฐ, ํŒŒ์ผ ์‹œ์Šคํ…œ๊ณผ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ๊ตฌ์ฒดํ™” ๋˜์–ด ์‹คํ–‰ ๋˜๋Š” ํ”„๋กœ์„ธ์Šค

๐ŸŽฌ ๊ฐ„๋‹จํ•œย  ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งŒ๋“ค๊ธฐ

  • ์ฝ”๋“œ ์ž‘์„ฑ
  • Dockerfile ์ž‘์„ฑ
  • ์ด๋ฏธ์ง€ ๋นŒ๋“œ
  • ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰

๐ŸŽฌ ๊ฐ„๋‹จํ•œย  ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งŒ๋“ค๊ธฐ

Dockerfile ์•Œ์•„๋ณด๊ธฐ [1/2]

์ธ์ŠคํŠธ๋Ÿญ์…˜ - Dockerfile์„ ๊ตฌ์„ฑํ•˜๋Š” ๋ช…๋ น ํ‚ค์›Œ๋“œ

FROM - ๋„์ปค ์ด๋ฏธ์ง€์˜ ๋ฒ ์ด์Šค๊ฐ€ ๋  ์ด๋ฏธ์ง€๋ฅผ ์ง€์ • ํ•œ๋‹ค. ์ด๋ฏธ์ง€ ๋นŒ๋“œ ์‹œ ๋จผ์ € ๋ฒ ์ด์Šค ์ด๋ฏธ์ง€๋ฅผ ๋‚ด๋ ค๋ฐ›๋Š”๋‹ค.

FROM: image_name:tag

ex) FROM: node:10-alpine

ย 

โœŒ๏ธ ์ด๋ฏธ์ง€๋Š” ๋นŒ๋“œ ๋  ๋•Œ๋งˆ๋‹ค ๊ณ ์œ ์˜ ํ•ด์‹œ๊ฐ’์„ ๊ฐ–๋Š”๋ฐ ์–ด๋–ค ์ด๋ฏธ์ง€์ธ์ง€ ํŠน์ •ํ•˜๊ธฐ๊ฐ€ ์–ด๋ ค์›Œ ํƒœ๊ทธ๋ฅผ ์ง€์ •ํ•œ๋‹ค. ์ง€์ •ํ•˜์ง€ ์•Š์œผ๋ฉด latest ํƒœ๊ทธ๊ฐ€ ์ž๋™์œผ๋กœ ๋ถ€์—ฌ๋œ๋‹ค.

๐ŸŽฌ ๊ฐ„๋‹จํ•œย  ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋งŒ๋“ค๊ธฐ

Dockerfile ์•Œ์•„๋ณด๊ธฐ [2/2]

RUN : ์ปจํ…Œ์ด๋„ˆ ์•ˆ์—์„œ ์‹คํ–‰ํ•  ๋ช…๋ น์„ ์ •์˜ํ•œ๋‹ค.

ex)ย RUN: mkdir echo

COPY: ํ˜ธ์ŠคํŠธ์˜ ํŒŒ์ผ์ด๋‚˜ ๋””๋ ‰ํ„ฐ๋ฆฌ๋ฅผ ์ปจํ…Œ์ด๋„ˆ ์•ˆ์œผ๋กœ ๋ณต์‚ฌํ•œ๋‹ค.

CMD: ์ปจํ…Œ์ด๋„ˆ ์•ˆ์—์„œ ์‹คํ–‰ํ•  ํ”„๋กœ์„ธ์Šค๋ฅผ ์ง€์ •ํ•œ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹œ์ž‘ํ•  ๋•Œ ํ•œ ๋ฒˆ ์‹คํ–‰ ๋œ๋‹ค.ย 

ex)ย COPY: server.js /echo

ex)ย CMD: ["node", "server.js"]

โœŒ๏ธ CMD ์ธ์ŠคํŠธ๋Ÿญ์…˜์€ ๊ณต๋ฐฑ์œผ๋กœ ๋‚˜๋ˆˆ ๋ฐฐ์—ด๋กœ ์ž‘์„ฑํ•œ๋‹ค.

๐Ÿณ ์ด๋ฏธ์ง€ ๋นŒ๋“œํ•˜๊ธฐ

๐Ÿณ ์ด๋ฏธ์ง€ ๋นŒ๋“œํ•˜๊ธฐ

docker image build [Dockerfile_path]

docker image build .

โœŒ๏ธ ย -t ย ์˜ต์…˜์€ ์ด๋ฏธ์ง€๋ช…์„ ์ง€์ • ํ•˜๊ฒŒ ํ•ด์ฃผ๋ฉฐ ์ด๋ฏธ์ง€๋ช…:ํƒœ๊ทธ ์ด์™€ ๊ฐ™์ด ํƒœ๊ทธ๋„ ํ•จ๊ป˜ ์ง€์ • ํ•  ์ˆ˜ ์žˆ๋‹ค. ํƒœ๊ทธ ์ƒ๋žต ์‹œ latest ํƒœ๊ทธ๊ฐ€ ๋ถ™๋Š”๋‹ค.

docker image build [Dockerfile_path]:tag

docker image build -t server:0.1

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ

docker container run image_name:tag

docker container run echo:0.1

โœŒ๏ธ ย -d ย ์˜ต์…˜์€ (Ctrl+C)๋ฅผ ์ž…๋ ฅํ•˜์ง€ ์•Š์œผ๋ฉด ๊ณ„์† ํฌ์–ด๊ทธ๋ผ์šด๋“œ๋กœ ์‹คํ–‰ ๋˜๊ฒŒ ๋˜๋Š”๋ฐ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋ฐฑ๊ทธ๋ผ์šด๋“œ์—์„œ ์‹คํ–‰ ํ•˜๊ณ  ์‹ถ์„๋•Œ ์‚ฌ์šฉํ•œ๋‹ค.

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰ํ•˜๊ธฐ

โœŒ๏ธ ย ํฌํŠธ ํฌ์›Œ๋”ฉ

์ปจํ…Œ์ด๋„ˆ๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ์‹คํ–‰ ๋˜์–ด๋„ ์ปจํ…Œ์ด๋„ˆ ๋„คํŠธ์›Œํฌ๋Š” ๊ฒฉ๋ฆฌ ๋˜์–ด ์žˆ์–ด ํ˜ธ์ŠคํŠธ์—์„œ ์ ‘๊ทผ ํ•  ์ˆ˜ ์žˆ๋‹ค. ์ด๊ฒƒ์„ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ํ˜ธ์ŠคํŠธ ํฌํŠธ์™€ ์ปจํ„ฐ๋„ค์ด๋„ˆ ํฌํŠธ๋ฅผ ์—ฐ๊ฒฐํ•ด ํ†ต์‹ ์„ ์ „๋‹ฌํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋งํ•œ๋‹ค.

ย 

-p ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ํฌํŠธ ํฌ์›Œ๋”ฉ์„ ์ง€์ • ํ•  ์ˆ˜ ์žˆ๋‹ค.

docker container run -d -p [host_port]:[container_port] [image]

docker container run -d -p 9000:8080 echo:0.1

๐Ÿณ ์ด๋ฏธ์ง€ ์•Œ์•„๋ณด๊ธฐ

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

โœŒ๏ธ docker [์ƒ์œ„ ๋ช…๋ น์–ด] --help

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

โœŒ๏ธ docker [์ƒ์œ„ ๋ช…๋ น์–ด] --help

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

docker image build options[1/2]

-f ์˜ต์…˜ - ์ด๋ฏธ์ง€ ๋นŒ๋“œ๋ฅผ ํ•˜๋ฉด ๋„์ปค๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ "Dockerfile" ์ฐพ๋Š”๋ฐ -f ๋ฅผ ๋‹ค์Œ ์ด๋ฆ„์˜ Dockerfile์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

docker image build -f [Dockerfile_name]-t echo:0.1 .

docker image build -f Dockerfile-test -t echo:0.1 .

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

docker image build options[2/2]

--pullย ์˜ต์…˜ - FROM ์ธ์ŠคํŠธ๋Ÿญ์…˜์— ์ง€์ •๋œ ํƒœ๊ทธ๊ฐ€ latest ์ผ ๊ฒฝ์šฐ ๋‚ด๋ ค ๋ฐ›์€ ์ด๋ฏธ์ง€๊ฐ€ ์กด์žฌํ•˜๋ฉด ์ƒˆ๋กœ ์ด๋ฏธ์ง€๋ฅผ ๋‚ด๋ ค ๋ฐ›์ง€ ์•Š๋Š”๋ฐ ๊ณ„์† ์ƒˆ๋กœ ๋‚ด๋ ค๋ฐ›๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•ด --pull์„ true ํ•˜๋ฉด ๋œ๋‹ค.

docker image build --pull=true -t echo:0.1 .

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

์ด๋ฏธ์ง€ ๊ฒ€์ƒ‰ํ•˜๊ธฐ - docker search

docker search [options] keyword

docker search --limit 5 mysql

โœŒ๏ธ --limit ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ฒ€์ƒ‰ ๋˜๋Š” ๊ฑด์ˆ˜๋ฅผ ์ œํ•œํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ STARS ์ˆœ์œผ๋กœ ์ถœ๋ ฅ ๋œ๋‹ค.

๋งจ ์œ„ mysql ์ด๋ฏธ์ง€๋Š” ๊ณต์‹ ๋ฆฌํฌ์ธ๋ฐ ๋„ค์ž„์ŠคํŽ˜์ด์Šค๋ฅผ ์ผ๋ฅ ์ ์œผ๋กœ library๋กœ ์‚ฌ์šฉ ๋˜๋ฉฐ ์ƒ๋žต ๊ฐ€๋Šฅํ•˜๋‹ค.

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

์ด๋ฏธ์ง€ ๋‚ด๋ ค๋ฐ›๊ธฐ - docker image pull

docker image pull [options] repo_name

docker image pull mysql

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

์ด๋ฏธ์ง€ ํƒœ๊ทธ ๋ถ™์ด๊ธฐ - docker image tag

docker image pull [options] repo_name

docker image pull mysql

๐Ÿณ ์ด๋ฏธ์ง€ ์ข€ ๋” ๊นŠ๊ฒŒ ๋‹ค๋ค„๋ณด๊ธฐ

์ด๋ฏธ์ง€ ์˜ฌ๋ฆฌ๊ธฐ - docker image push

docker image push [options] repo_name:tag

docker image push echo:latestย 

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” ์ด๋ฏธ์ง€๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ํ•˜๋‚˜์˜ ๊ฐ€์ƒํ™˜๊ฒฝ์ด๋‹ค.

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” ์ƒ์• ์ฃผ๊ธฐ๋Š” 3๊ฐ€์ง€๋กœ ๋‚˜๋ˆŒ ์ˆ˜ ์žˆ๋‹ค.

ย 

์‹คํ–‰ ์ค‘ ์ƒํƒœ / ์ •์ง€ /ํŒŒ๊ธฐ

์ปจํ…Œ์ด๋„ˆ์˜ ์ƒ์• ์ฃผ๊ธฐ [1/2]

์‹คํ–‰ ์ค‘ ์ƒํƒœ - CMD ๋ฐ ENTRYPOINT ์ธ์ŠคํŠธ๋Ÿญ์…˜์— ์ •์˜๋œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹คํ–‰ ๋œ ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.

ย 

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

์ปจํ…Œ์ด๋„ˆ์˜ ์ƒ์• ์ฃผ๊ธฐ [2/2]

์ •์ง€ - ์ปจํ…Œ์ด๊ฐ€ ์ข…๋ฃŒ ๋˜๊ณ  ๋””์Šคํฌ์— ์ปจํ…Œ์ด๋„ˆ ์ €์žฅ๋˜์–ด ์žˆ์–ด ์žฌ์‹œ์ž‘ ํ•  ์ˆ˜ ์žˆ๋Š” ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.

ย 

ํŒŒ๊ธฐ - ์ •์ง€ ์ƒํƒœ์˜ ์ปจํ…Œ์ด๋„ˆ๋Š” ๋””์Šคํฌ์— ๋‚จ์•„ ์žˆ๋‹ค. ์ด ๊ฒƒ์„ ์‚ญ์ œํ•œ ์ƒํƒœ๋ฅผ ๋งํ•œ๋‹ค.

ย 

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

container run options [1/2]

--name ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด container ์— ์ด๋ฆ„์„ ์ง€์ • ํ•  ์ˆ˜ ์žˆ๋‹ค.

ย 

docker container run --name [name] [image]

docker container run --name app echo:0.1

ย 

โœŒ๏ธ ๊ณ„์† ๊ฐ™์€ ์ด๋ฆ„์˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒˆ๋กœ ์‹คํ–‰ ํ•˜๋ ค๋ฉด ์ •์ง€๋‚˜ ํŒŒ๊ธฐ ๊ณผ์ •์ด ํ•„์š”ํ•ด ์‹ค์ œ ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ์ž˜ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค.

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

container run options [1/2]

--name ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด container ์— ์ด๋ฆ„์„ ์ง€์ • ํ•  ์ˆ˜ ์žˆ๋‹ค.

ย 

docker container run --name [name] [image]

docker container run --name app echo:0.1

ย 

โœŒ๏ธ ๊ณ„์† ๊ฐ™์€ ์ด๋ฆ„์˜ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ƒˆ๋กœ ์‹คํ–‰ ํ•˜๋ ค๋ฉด ์ •์ง€๋‚˜ ํŒŒ๊ธฐ ๊ณผ์ •์ด ํ•„์š”ํ•ด ์‹ค์ œ ์šด์˜ ํ™˜๊ฒฝ์—์„œ๋Š” ์ž˜ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค.

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

container run options [2/2]

--rm ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด container๊ฐ€ ์ข…๋ฃŒ๋จ๊ณผ ๋™์‹œ์— ์‚ญ์ œํ•œ๋‹ค. ๊ทธ๋ ‡๊ธฐ๋•Œ๋ฌธ์— ๋””์Šคํฌ์— ์Œ“์ธ container๋ฅผ ์ •๋ฆฌํ•˜๋Š” ์ˆ˜๊ณ ๋ฅผ ๋œ ์ˆ˜ ์žˆ๋‹ค.

ย 

docker container run -d --rm --name app echo:0.1

ย 

-i ์˜ต์…˜์€ ์ปจํ…Œ์ด๋„ˆ ์ชฝ ํ‘œ์ค€ ์ž…๋ ฅ๊ณผ์˜ ์—ฐ๊ฒฐ์„ ์œ ์ง€ํ•œ๋‹ค.

-t ์˜ต์…˜์€ ์œ ์‚ฌ ํ„ฐ๋ฏธ๋„ ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™” ์‹œ์ผœ์ค€๋‹ค. ๊ทธ๋ ‡๊ธฐ๋•Œ๋ฌธ์— ๋ณดํ†ต -it ์ถ•์•ฝํ˜•์œผ๋กœ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค.

ย 

docker container run -d --rm -it --name app echo:0.1

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก ๋ณด๊ธฐ - docker container ls [1/3]

docker container ls [options]

โ€‹

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก ๋ณด๊ธฐ - docker container ls [2/3]

โœŒ๏ธ ์นผ๋Ÿผ ํ•ญ๋ชฉโ€‹

ย ํ•ญ๋ชฉ ย ๋‚ด์šฉ
ย CONTAINER ID ย ์ปจํ…Œ์ด๋„ˆ ์‹๋ณ„์ž
ย IMAGE ย ์‚ฌ์šฉ๋œ ์ด๋ฏธ์ง€
ย COMMAD ย ์ปจํ…Œ์ด๋„ˆ์—์„œ ์‹คํ–‰๋œ ํ”„๋กœ์„ธ์Šค
ย CREATED ย ์ƒ์„ฑ ํ›„ ๊ฒฝ๊ณผ ์‹œ๊ฐ„
ย STATUS ย ์‹คํ–‰ ์ƒํƒœ Up / Exited
ย PORTS ย ํฌํŠธ ํฌ์›Œ๋”ฉ ๊ด€๊ณ„
ย NAMES ย ์ปจํ„ฐ์ด๋„ˆ ์ด๋ฆ„

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

์ปจํ…Œ์ด๋„ˆ ๋ชฉ๋ก ๋ณด๊ธฐ - docker container ls [3/3]

โœŒ๏ธ Options

-q ์˜ต์…˜์€ ์ด๋ฏธ์ง€ ID๋ฅผ ์ถ•์•ฝ์œผ๋กœ ํ‘œ์‹œํ•œ๋‹ค.

--filter ์˜ต์…ฅ์€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•„ํ„ฐ ํ•ญ๋ชฉ์— ๋”ฐ๋ผ ํ•„ํ„ฐ๋ง ํ•˜์—ฌ ๋ณด์—ฌ์ค€๋‹ค.

-a ํƒœ๊ทธ๋Š” ์ข…๋ฃŒ ๋œ ์ปจํ…Œ์ด๋„ˆ๋„ ํ•จ๊ป˜ ๋ณด์—ฌ์ค€๋‹ค.

๐Ÿณ ์ปจํ…Œ์ด๋„ˆ ์•Œ์•„๋ณด๊ธฐ

์ปจํ…Œ์ด๋„ˆ ์ฃผ์š” ๋ช…๋ น์–ดย 

stop - ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ •์ง€ํ•œ๋‹ค.

rm - ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํŒŒ๊ธฐํ•œ๋‹ค. ๊ฐ•์ œ ์ข…๋ฃŒ ์˜ต์…˜ -f

restart - ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์žฌ์‹œ์ž‘ํ•œ๋‹ค.

logs - ํ‘œ์ค€ ์ถœ๋ ฅ ๋‚ด์šฉ์„ ํ™•์ธ ํ•  ์ˆ˜ ์žˆ๋‹ค.

exec - ์‹คํ–‰ ์ค‘์ธ ์ปจํ…Œ์ด๋„ˆ์—์„œ ๋ช…๋ น์„ ์‹คํ–‰ ํ•  ์ˆ˜ ์žˆ๋‹ค.

cp - ์ปจํ…Œ์ด๋„ˆ๋ผ๋ฆฌ ํ˜น์€ ์ปจํ…Œ์ด๋„ˆ์™€ ํ˜ธ์ŠคํŠธ ๊ฐ„์— ํŒŒ์ผ์„ ๋ณต์‚ฌ ํ•  ์ˆ˜ ์žˆ๋‹ค.

stats - ์‹œ์Šคํ…œ ๋ฆฌ์†Œ์Šค ์‚ฌ์šฉ ํ˜„ํ™ฉ์„ ๋ณผ ์ˆ˜ ์žˆ๋‹ค

๐Ÿณ ๋””์Šคํฌ ์ •๋ฆฌํ•˜๊ธฐ

๐Ÿณ ๋””์Šคํฌ ์ •๋ฆฌํ•˜๊ธฐ

tag๊ฐ€ ๋ถ™์ง€ ์•Š์€ ์ด๋ฏธ์ง€ ๋ชจ๋‘ ์ œ๊ฑฐ

docker image prune

ย 

์ •์ง€๋œ ์ปจํ…Œ์ด๋„ˆ ๋ชจ๋‘ ์ œ๊ฑฐ

docker container pruneย 

ย 

๋ชจ๋“  ๋„์ปค ๋ฆฌ์†Œ์Šค ์ œ๊ฑฐ

docker system prune

ย 

๐Ÿณ ๋„์ปค ์ปดํฌ์ฆˆ

๐Ÿณ ๋„์ปค ์ปดํฌ์ฆˆ

yaml ํฌ๋งท์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ ์„ค์ • ์‚ฌํ•ญ์„ ๊ธฐ์ˆ  ํ•˜์—ฌ ์—ฌ๋Ÿฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•œ ๋ฒˆ์— ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋„๋กย  ํ•œ๋‹ค.

๋„์ปค ์ปดํฌ์ฆˆ?

๐Ÿณ ๋„์ปค ์ปดํฌ์ฆˆ

yaml ํฌ๋งท์œผ๋กœ ์ปจํ…Œ์ด๋„ˆ ์„ค์ • ์‚ฌํ•ญ์„ ๊ธฐ์ˆ  ํ•˜์—ฌ ์—ฌ๋Ÿฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ํ•œ ๋ฒˆ์— ๊ด€๋ฆฌ ํ•  ์ˆ˜ ์žˆ๋„๋กย  ํ•œ๋‹ค.

๋„์ปค ์ปดํฌ์ฆˆ๋กœ ์ปจํ…Œ์ด๋„ˆ ์‹คํ–‰

Docker container deployment

By Seungwoo Hong

Docker container deployment

  • 289