Moby: ๋กœ์ปฌ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๊ฐ€ ์˜ค๋ž˜๋˜์—ˆ๋Š”์ง€ ํ™•์ธํ•˜๋Š” Docker ๋ช…๋ น?

์— ๋งŒ๋“  2017๋…„ 02์›” 10์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: moby/moby

dockerhub์˜ ์›๊ฒฉ ์ด๋ฏธ์ง€์™€ ๋น„๊ตํ•ด๋ณด์‹ญ์‹œ์˜ค. ๋‚˜๋Š” ์ด๊ฒƒ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํ‘œ์ค€์ ์ธ ๋ฐฉ๋ฒ•์„ ์ฐพ๊ณ  ์žˆ์—ˆ์ง€๋งŒ ๋‚ด๊ฐ€ ์ฐพ์„ ์ˆ˜ ์žˆ์—ˆ๋˜ ๊ฒƒ์€ ๋ถ€์„œ์ง€๊ธฐ ์‰ฌ์šด bash ์Šคํฌ๋ฆฝํŠธ ๋“ฑ์ด๋‹ค. ๊ทธ๋Ÿฌํ•œ ํ™•์ธ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ๊ณต์‹์ ์ด๊ณ  ๊ถŒ์žฅ๋˜๋Š” ๋ฐฉ๋ฒ•์€ ์—†์Šต๋‹ˆ๋‹ค. ์Šคํƒ ์˜ค๋ฒ„ํ”Œ๋กœ ์งˆ๋ฌธ ์€ ์•„์ง ๋ช…ํ™•ํ•œ ๋‹ต๋ณ€์„ ์–ป์ง€ ๋ชปํ–ˆ์Šต๋‹ˆ๋‹ค. ์–ด๋Š ์ชฝ๋„ ์ด์™€ ์œ ์‚ฌํ•œ ์งˆ๋ฌธ์ด ์—†์Šต๋‹ˆ๋‹ค.

๋กœ์ปฌ ์ด๋ฏธ์ง€๊ฐ€ ์›๊ฒฉ์— ๋น„ํ•ด ์˜ค๋ž˜๋œ ๊ฒƒ์ธ์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์€ ๊ฐœ๋ฐœ ๋ฐ ์Šคํ…Œ์ด์ง• ํ™˜๊ฒฝ์— ๋งค์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค (docker-cloud๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด์ด๋ฅผ ์œ„ํ•ด ์ž๋™ ์—…๋ฐ์ดํŠธ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์„ค์ •ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค). ์„ฑ๊ณต์ ์ธ ์ด๋ฏธ์ง€ ๋นŒ๋“œ ํ›„ ์›นํ›…์„ ์‚ฌ์šฉํ•˜์—ฌ ๋‹ค์‹œ ํ’€์„ ํŠธ๋ฆฌ๊ฑฐ ํ•  ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ณ  ์žˆ์ง€๋งŒ ์„œ๋ฒ„์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•˜๋Š” ๋Œ€์‹  ์„œ๋ฒ„์—์„œ ํ™•์ธ์„ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ๊ธฐ๋ฅผ ์›ํ•œ๋‹ค๊ณ  ๊ฐ€์ • ํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ํ˜„์žฌ์ด ๊ฒ€์‚ฌ๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•  ์ˆ˜์žˆ๋Š” ๋„์ปค ๋ช…๋ น์ด ์—†๋‹ค๊ณ  ๊ฐ€์ •ํ•˜๋Š” ๊ฒƒ์ด ๋งž์Šต๋‹ˆ๊นŒ, ์•„๋‹ˆ๋ฉด์ด ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋ช…๋ฐฑํ•œ ๋„์ปค ๊ธฐ๋ณธ ์†”๋ฃจ์…˜์„ ๋†“์ณค์Šต๋‹ˆ๊นŒ?

aredistribution areimages kinquestion

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

"๋ฌด์ž‘์ • ์—…๋ฐ์ดํŠธ"์™€ ๋ณ€๊ฒฝ๋œ ์›๊ฒฉ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์•Œ๋ฆผ (๋™์ผํ•œ ํƒœ๊ทธ ์‚ฌ์šฉ) ์‚ฌ์ด์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ๋นŒ๋“œ ๋ฐ QA ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  3 ๋Œ“๊ธ€

์•„๋‹ˆ์š”, ํ˜„์žฌ ์ด๋ฏธ์ง€๊ฐ€ "์˜ค๋ž˜๋œ"๊ฒƒ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๊ธฐ๋ณธ ์ œ๊ณต ์˜ต์…˜์ด ์—†์Šต๋‹ˆ๋‹ค. ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ์€ ์‚ฌ์šฉ ์‚ฌ๋ก€์— ๋”ฐ๋ผ ์‹ค์ œ๋กœ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ์ตœ์‹  ์ด๋ฏธ์ง€๋กœ "๋งน๋ชฉ์ ์œผ๋กœ"์—…๋ฐ์ดํŠธํ•˜๋Š” ๊ฒƒ์€ ์ค‘์š”ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด some-image:latest ๋Š” _completely_ ๋‹ค๋ฅธ ์ด๋ฏธ์ง€๋ฅผ ์ƒ์„ฑ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค (์˜ˆ : ubuntu:latest ๋Š” ์ตœ์‹  "LTS"๋ฆด๋ฆฌ์Šค๋ฅผ ๋‚˜ํƒ€๋‚ด๋ฉฐ ํŠน์ • ์‹œ์ ์—์„œ 14.04์—์„œ 16.04๋กœ ์ „ํ™˜๋จ). ๋™์‹œ์— some-image:1.2.3 SemVer (ish) ํƒœ๊ทธ์ฒ˜๋Ÿผ "๋ณด์ด์ง€๋งŒ"๋ณด์žฅ ํ•  ์ˆ˜๋Š” ์—†์Šต๋‹ˆ๋‹ค. "ํƒœ๊ทธ"์ฒด๊ณ„์™€ ๊ทธ ์˜๋ฏธ๋ฅผ ๋ชจ๋‘ ๊ฒฐ์ •ํ•˜๋Š” ๊ฒƒ์€ ์ด๋ฏธ์ง€ ์ž‘์„ฑ์ž์˜ ๋ชซ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค (๊ธฐ๋ณธ์ ์œผ๋กœ ํƒœ๊ทธ๋Š” ๋ฌด๋ฃŒ์ž…๋‹ˆ๋‹ค). ์–‘์‹ "๋ผ๋ฒจ").

์ด๋Ÿฌํ•œ ์ด์œ ๋กœ ์ปจํ…Œ์ด๋„ˆ์— ๋Œ€ํ•ด ๋ณ€๊ฒฝ ๋ถˆ๊ฐ€๋Šฅํ•œ ์‹๋ณ„์ž (์˜ˆ ubuntu<strong i="9">@sha256</strong>:aabbbcccddd )๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‹คํ–‰์ค‘์ธ ์ •ํ™•ํ•œ ์ด๋ฏธ์ง€ ๋ฒ„์ „์„ _test_ ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ QA ํ”„๋กœ์„ธ์Šค์—์„œ ํ…Œ์ŠคํŠธ ํ•œ ๊ฒƒ๊ณผ _same_ ๋ฒ„์ „์ž„์„ ๋ณด์žฅ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์œ„์—์„œ ๋งํ–ˆ๋“ฏ์ด ๋ช‡ ๊ฐ€์ง€ ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.

  • docker compose ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ docker-compose pull ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž‘์„ฑ ์Šคํƒ์— ์‚ฌ์šฉ ๋œ ๋ชจ๋“  ์ด๋ฏธ์ง€์˜ ์ตœ์‹  ๋ฒ„์ „์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์ด๋ฏธ์ง€๋ฅผ _building_ ํ•  ๋•Œ ๋นŒ๋“œ๋ฅผ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— docker build --pull ..... ์—์„œ FROM ์ •์˜ ๋œ ์ด๋ฏธ์ง€๋ฅผ ๊ฐ•์ œ๋กœ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์„œ๋น„์Šค ์ด์šฉ์‹œ docker service update --force --image foo:bar <servicename> ๋Š” ์ง€์ •๋œ foo:bar ์ด๋ฏธ์ง€์˜ ์ตœ์‹  ๋ฒ„์ „์„ ํ™•์ธํ•˜๊ณ  ์„œ๋น„์Šค์˜ ๋ชจ๋“  ์ธ์Šคํ„ด์Šค๋ฅผ ํ•ด๋‹น ๋ฒ„์ „์— "๊ณ ์ •"ํ•ฉ๋‹ˆ๋‹ค.

๊ท€ํ•˜์˜ ์งˆ๋ฌธ์— ๋Œ€ํ•œ ๋‹ต๋ณ€์ด ๋˜์—ˆ๊ธฐ๋ฅผ ๋ฐ”๋ž๋‹ˆ๋‹ค. GitHub ์ด์Šˆ ํŠธ๋ž˜์ปค๋Š” ์ผ๋ฐ˜ ์ง€์› ํฌ๋Ÿผ์ด ์•„๋‹ˆ๋ผ ๋ฒ„๊ทธ ๋ฐ ๊ธฐ๋Šฅ ์š”์ฒญ์„๋ณด๊ณ ํ•˜๊ธฐ์œ„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์œ ํ˜•์˜ ์งˆ๋ฌธ์— ๋Œ€ํ•ด์„œ๋Š” ๋‹ค์Œ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์‹ญ์‹œ์˜ค.

๋ฒ„๊ทธ๊ฐ€ ์•„๋‹ˆ๊ธฐ ๋•Œ๋ฌธ์—์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ๋Œ€ํ™”๋ฅผ ๊ณ„์†ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

"๋ฌด์ž‘์ • ์—…๋ฐ์ดํŠธ"์™€ ๋ณ€๊ฒฝ๋œ ์›๊ฒฉ ์ด๋ฏธ์ง€์— ๋Œ€ํ•œ ์•Œ๋ฆผ (๋™์ผํ•œ ํƒœ๊ทธ ์‚ฌ์šฉ) ์‚ฌ์ด์—๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์œผ๋ฏ€๋กœ ๋นŒ๋“œ ๋ฐ QA ํ”„๋กœ์„ธ์Šค๋ฅผ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณผ์—ฐ. ๋งค์ผ ์ „์ฒด ์ปจํ…Œ์ด๋„ˆ๋ฅผ ๋‹ค์‹œ ๋‹ค์šด๋กœ๋“œํ•˜์ง€ ์•Š๊ณ  ์ปจํ…Œ์ด๋„ˆ์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ๊ฐ์ง€ ํ•  ์ˆ˜์žˆ๋Š” ์•ˆ์ •์ ์ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ๋Œ€๋‹จ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ณด์•ˆ ์—…๋ฐ์ดํŠธ๋Š” ๋งค์šฐ ์ค‘์š”ํ•˜๋ฉฐ์ด ๊ธฐ๋Šฅ์ด ์—†์–ด๋„ ์ตœ์‹  ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•˜๊ธฐ๊ฐ€ ๋” ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค .....

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰