study blog

[Docker] ๋„์ปค๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ๋ณธ๋ฌธ

DevOps/Docker

[Docker] ๋„์ปค๋ž€ ๋ฌด์—‡์ธ๊ฐ€?

gyuI 2022. 2. 21. 22:18

๐Ÿณ Docker๋ž€?

์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜์˜ ์˜คํ”ˆ์†Œ์Šค ๊ฐ€์ƒํ™” ํ”Œ๋žซํผ์œผ๋กœ, ๋‹ค์–‘ํ•œ ํ”„๋กœ๊ทธ๋žจ๊ณผ ์‹คํ–‰ํ™˜๊ฒฝ์„ ์ปจํ…Œ์ด๋„ˆ๋กœ ์ถ”์ƒํ™”ํ•˜๊ณ  ๋™์ผํ•œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•˜์—ฌ ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฐฐํฌ ๋ฐ ๊ด€๋ฆฌ๋ฅผ ๋‹จ์ˆœํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์ฃผ๋Š” ํ”Œ๋žซํผ์ด๋‹ค.

๋ฐฑ์—”๋“œ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„œ๋ฒ„, ๋ฉ”์‹œ์ง€ ํ ๋“ฑ ์–ด๋–ค ํ”„๋กœ๊ทธ๋žจ๋„ ์ปจํ…Œ์ด๋„ˆ๋กœ ์ถ”์ƒํ™” ํ•  ์ˆ˜ ์žˆ๊ณ  ์–ด๋””์—์„œ๋“  ์‹คํ–‰ ๊ฐ€๋Šฅํ•˜๋‹ค.

OS๋ฅผ ํฌํ•จํ•œ ์„ค์น˜ ๊ณผ์ •์€ Dockerfile๋กœ ๋ฌธ์„œํ™”๋˜๊ณ  ์ˆ˜์ • ์ด๋ ฅ์€ ๋ฒ„์ „ ๊ด€๋ฆฌ๊ฐ€ ๋˜์–ด ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์‰ฝ๊ฒŒ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ค.

 

๐Ÿ’ก ๊ฐ€์ƒ๋จธ์‹ ๊ณผ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ

๊ธฐ์กด์˜ ๊ฐ€์ƒํ™” ๊ธฐ์ˆ ์€ ํ•˜์ดํผ๋ฐ”์ด์ €๋ฅผ ์ด์šฉํ•ด ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์šด์˜์ฒด์ œ๋ฅผ ํ•˜๋‚˜์˜ ํ˜ธ์ŠคํŠธ์—์„œ ์ƒ์„ฑํ•ด ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ์‹์ด์—ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ์šด์˜์ฒด์ œ๋Š” ๊ฐ€์ƒ ๋จธ์‹ ์ด๋ผ๋Š” ๋‹จ์œ„๋กœ ๊ตฌ๋ณ„๋˜๊ณ , ๊ฐ ๊ฐ€์ƒ๋จธ์‹ ์—๋Š” ์šฐ๋ถ„ํˆฌ, CentOS ๋“ฑ์˜ ์šด์˜์ฒด์ œ๊ฐ€ ์„ค์น˜๋˜์–ด ์‚ฌ์šฉ๋œ๋‹ค.

ํ•˜์ดํผ๋ฐ”์ด์ €์— ์ƒ์„ฑ๋˜๊ณ  ๊ด€๋ฆฌ๋˜๋Š” ์šด์˜์ฒด์ œ๋Š” Guest OS๋ผ๊ณ  ํ•˜๋ฉฐ, ๊ฐ ๊ฒŒ์ŠคํŠธ ์šด์˜์ฒด์ œ๋Š” ๋‹ค๋ฅธ ๊ฒŒ์ŠคํŠธ ์šด์˜์ฒด์ œ์™€๋Š” ์™„์ „ํžˆ ๋…๋ฆฝ๋œ ๊ณต๊ฐ„๊ณผ ์‹œ์Šคํ…œ ์ž์›์„ ํ• ๋‹น๋ฐ›์•„ ์‚ฌ์šฉํ•œ๋‹ค. ์ด๋Ÿฐ ๋ฐฉ์‹์˜ ๊ฐ€์ƒํ™” ํˆด์€ VirtualBox, VMware๋“ฑ์ด ์žˆ๋‹ค.

๊ฐ€์ƒ ๋จธ์‹ ๊ณผ ๋„์ปค ์ปจํ…Œ์ด๋„ˆ์˜ ๊ตฌ์กฐ

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

์ด์— ๋น„ํ•ด ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” ๋ฆฌ๋ˆ…์Šค์˜ ์ž์ฒด ๊ธฐ๋Šฅ์ธ chroot, ๋„ค์ž„์ŠคํŽ˜์ด์Šค, cgroup์„ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ ํ”„๋กœ์„ธ์Šค ๋‹จ์œ„์˜ ๊ฒฉ๋ฆฌ ํ™˜๊ฒฝ์„ ๋งŒ๋“ค๊ธฐ ๋•Œ๋ฌธ์— ์„ฑ๋Šฅ ์†์‹ค์ด ๊ฑฐ์˜ ์—†๋‹ค. ๋”ฐ๋ผ์„œ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ด๋ฏธ์ง€๋กœ ๋งŒ๋“ค์–ด ๋ฐฐํฌํ•˜๋Š” ์‹œ๊ฐ„์ด ๊ฐ€์ƒ ๋จธ์‹ ์— ๋น„ํ•ด ๋น ๋ฅด๋ฉฐ, ๊ฐ€์ƒํ™”๋œ ๊ณต๊ฐ„์„ ์‚ฌ์šฉํ•  ๋•Œ์˜ ์„ฑ๋Šฅ ์†์‹ค๋„ ๊ฑฐ์˜ ์—†๋‹ค๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

 

๐Ÿ’ก ๋„์ปค๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ 

1. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฐœ๋ฐœ๊ณผ ๋ฐฐํฌ๊ฐ€ ํŽธํ•ด์ง„๋‹ค.

 

์„œ๋ฒ„๋ฅผ ๋ถ€ํŒ…ํ•  ๋•Œ ์‹คํ–‰๋˜๋Š” ์šด์˜์ฒด์ œ๋ฅผ ์ผ๋ฐ˜์ ์œผ๋กœ ํ˜ธ์ŠคํŠธ OS๋ผ๊ณ  ๋ถ€๋ฅด๋ฉฐ, ๋„์ปค ์ปจํ…Œ์ด๋„ˆ๋Š” ํ˜ธ์ŠคํŠธ OS ์œ„์—์„œ ์‹คํ–‰๋˜๋Š” ๊ฒฉ๋ฆฌ๋œ ๊ณต๊ฐ„์ด๋‹ค. ๋”ฐ๋ผ์„œ ์ปจํ…Œ์ด๋„ˆ ์ž์ฒด์— ํŠน๋ณ„ํ•œ ๊ถŒํ•œ์„ ์ฃผ์ง€ ์•Š๋Š” ํ•œ, ์ปจํ…Œ์ด๋„ˆ ๋‚ด๋ถ€์—์„œ ์ˆ˜๋งŽ์€ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์„ค์น˜ํ•˜๊ณ  ์„ค์ • ํŒŒ์ผ์„ ์ˆ˜์ •ํ•ด๋„ ํ˜ธ์ŠคํŠธ OS์—๋Š” ์˜ํ–ฅ์„ ๋ผ์น˜์ง€ ์•Š์œผ๋ฏ€๋กœ ๋…๋ฆฝ๋œ ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์„ ๋ณด์žฅ ๋ฐ›์„ ์ˆ˜ ์žˆ๋‹ค.

๊ฒŒ๋‹ค๊ฐ€ ๋„์ปค ์ด๋ฏธ์ง€๋Š” ์ปค๋„์„ ํฌํ•จํ•˜๊ณ  ์žˆ์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ฏธ์ง€ ํฌ๊ธฐ๊ฐ€ ์ž‘๊ณ , ์ด๋ฏธ์ง€ ๋‚ด์šฉ์„ ๋ ˆ์ด์–ด ๋‹จ์œ„๋กœ ๊ตฌ์„ฑํ•˜๋ฉฐ ์ค‘๋ณต๋˜๋Š” ๋ ˆ์ด์–ด๋ฅผ ์žฌ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋ฐฐํฌ ์†๋„๊ฐ€ ๋งค์šฐ ๋นจ๋ผ์ง„๋‹ค.

 

2. ์—ฌ๋Ÿฌ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๋…๋ฆฝ์„ฑ๊ณผ ํ™•์žฅ์„ฑ์ด ๋†’์•„์ง„๋‹ค.

 

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

์†Œ๊ทœ๋ชจ ์„œ๋น„์Šค์—์„œ๋Š” ์ด ๋ฐฉ์‹์ด ์–ด์šธ๋ฆด์ง€๋„ ๋ชจ๋ฅด์ง€๋งŒ, ๊ธฐ๋Šฅ์ด ๋ณต์žกํ•˜๊ณ  ๊ฑฐ๋Œ€ํ•ด์งˆ์ˆ˜๋ก ํ™•์žฅ์„ฑ๊ณผ ์œ ์—ฐ์„ฑ์ด ์ค„์–ด๋“ ๋‹ค๋Š” ๋‹จ์ ์ด ์žˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ชจ๋†€๋ฆฌ์Šค ๋ฐฉ์‹์œผ๋กœ ๋Œ€์ฒดํ•˜๊ธฐ ์œ„ํ•ด ์ตœ๊ทผ ์ƒˆ๋กญ๊ฒŒ ๋– ์˜ค๋ฅธ ๊ฐœ๋…์ด ๋งˆ์ดํฌ๋กœ์„œ๋น„์Šค ๊ตฌ์กฐ์ด๋‹ค.

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

 

 

 

 

::์ฐธ๊ณ ์ž๋ฃŒ::

[์‹œ์ž‘ํ•˜์„ธ์š”! ๋„์ปค/์ฟ ๋ฒ„๋„คํ‹ฐ์Šค - ์œ„ํ‚ค๋ถ์Šค]

Comments