1. ๋„์ปค(docker) ๋ž€?


Docker๋ž€ Go์–ธ์–ด๋กœ ์ž‘์„ฑ๋œ ๋ฆฌ๋ˆ…์Šค ์ปจํ…Œ์ด๋„ˆ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ๊ฐ€์ƒํ™” ํ”Œ๋žซํผ

 

- ๊ฐ€์ƒํ™” ์‚ฌ์šฉ ์ด์œ ?

์ปดํ“จํ„ฐ(์„œ๋ฒ„)์˜ ์„ฑ๋Šฅ์„ ํšจ์œจ์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๊ฐ€์ƒํ™”๋ฅผ ์‚ฌ์šฉํ•จ.

 

- ์ปจํ…Œ์ด๋„ˆ๋ž€?

๋…ผ๋ฆฌ์ ์ธ ๊ณต๊ฐ„(์ปจํ…Œ์ด๋„ˆ)์„ ๋งŒ๋“ค์–ด ๋‹ค์–‘ํ•œ ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์„ค์น˜ํ•ด ํ•˜๋‚˜์˜ ์„œ๋ฒ„์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ํŒจํ‚ค์ง€

 

- ์ปจํ…Œ์ด๋„ˆ์˜ ํŠน์ง•?

โ‘  ์ž์›๋‚ญ๋น„์˜ ๋ถ€๋‹ด์ด ์ ์Œ

โ‘ก ์‹คํ–‰ ์†๋„๊ฐ€ ๋น ๋ฆ„

โ‘ข ๋ฐฐํฌ ๋ฐ ๊ด€๋ฆฌ๋ฅผ ๋‹จ์ˆœํ•˜๊ฒŒ ํ•ด์คŒ

โ‘ฃ ์ปจํ…Œ์ด๋„ˆ ์ด๋ฏธ์ง€๋ฅผ ์‰ฝ๊ฒŒ ๊ณต์œ  ๋ฐ ์‚ฌ์šฉ ๊ฐ€๋Šฅ

 

2. ๋„์ปค ์„ค์น˜(์œˆ๋„์šฐ)

1) ์œˆ๋„์šฐ ๋ฒ„์ „์—์„œ Docker๋Š” Hyper-V ๊ธฐ๋ฐ˜์œผ๋กœ ๊ฐœ๋ฐœ๋˜์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•˜์•ผ ํ•จ

   * ์ œ์–ดํŒ -> ํ”„๋กœ๊ทธ๋žจ ๋ฐ ๊ธฐ๋Šฅ -> Windows ๊ธฐ๋Šฅ ์ผœ๊ธฐ/๋„๊ธฐ -> Hyper-V ์ฒดํฌ(์„ค์น˜ ํ›„ ์žฌ๋ถ€ํŒ…)

 

2) Docker Desktop Windows ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œ ๋ฐ ์„ค์น˜

https://docs.docker.com/desktop/install/windows-install/

3) ๋‹ค์šด๋กœ๋“œ ํŒŒ์ผ ์„ค์น˜ ์ง„ํ–‰(์„ค์น˜ ์™„๋ฃŒ ํ›„ PC ์žฌ๋ถ€ํŒ…)

2-1. WSL2 ํ™œ์„ฑํ™”

- Docker๋Š” ๋ฆฌ๋ˆ…์Šค ๊ธฐ๋ฐ˜์œผ๋กœ ๋™์ž‘ํ•œ๋‹ค. ๋”ฐ๋ผ์„œ ์œˆ๋„์šฐ ํ™˜๊ฒฝ์—์„œ ๋ฆฌ๋ˆ…์Šค๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๋Š” WSL2๋ฅผ ํ™œ์„ฑํ™” ํ•ด์•ผํ•œ๋‹ค.

- WSL(Windows Subsystem for Linux) ๋Š” VM๊ณผ ๊ฐ™์€ ๋„๊ตฌ ์—†์ด ์œˆ๋„์šฐ ํ™˜๊ฒฝ์—์„œ Linux๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ค€๋‹ค.

- Powershell์„ Bash ์ฒ˜๋Ÿผ ์‚ฌ์šฉํ•˜๊ณ  ๋ฆฌ๋ˆ…์Šค ๋ช…๋ น์–ด์™€ ์ปค๋„์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Œ

 

 

1) ๊ด€๋ฆฌ์ž ๊ถŒํ•œ์œผ๋กœ Windows PowerShell ์‹คํ–‰

 

2)  ์•„๋ž˜ ๋ช…๋ น์–ด ์‹คํ–‰

# Windows SubSystem Linux๋ฅผ ํ™œ์„ฑํ™”์‹œํ‚ค๋Š” ๋ช…๋ น์–ด
> dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart

# VirtualMachinePlatform ๊ธฐ๋Šฅ์„ ํ™œ์„ฑํ™”์‹œํ‚ค๋Š” ๋ช…๋ น์–ด : WSL2 ๋ฒ„์ „์— ํ•„์š”ํ•œ ๋ช…๋ น์–ด
> dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

* ์ด๋•Œ, 2๋ฒˆ์งธ ๋ช…๋ น์–ด๋Š” windows ๋ฒ„์ „์ด 1904 ์ด์ƒ์ด์—ฌ์•ผ ํ•จ.

* ๋ฒ„์ „์„ ํ™•์ธํ•˜๋ ค๋ฉด 'win+R -> winver ์ž…๋ ฅ' ํ›„ ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์€ windows ์ •๋ณด ์ฐฝ์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•จ.

3

3)  x64 ๋จธ์‹ ์šฉ ์ตœ์‹  WSL2 Linux ์ปค๋„ ์—…๋ฐ์ดํŠธ ํŒจํ‚ค์ง€๋ฅผ ์„ค์น˜

https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi 

4)  WSL2๋ฅผ ๊ธฐ๋ณธ๋ฒ„์ „์œผ๋กœ ์„ค์ • 

wsl --set-default-version 2

 

 

5) ๋„์ปค๊ฐ€ ์ •์„ฑ์ž‘์œผ๋กœ ์„ค์น˜ ๋˜์—ˆ๋Š”์ง€ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ํ™•์ธ

docker version

 

2-2. ๋ฆฌ๋ˆ…์Šค ์ด๋ฏธ์ง€ ํŒŒ์ผ ๋„์ปค์— ๋‚ด๋ ค๋ฐ›๊ธฐ

๋„์ปค์—์„œ ๋ฆฌ๋ˆ…์Šค ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ๋‚ด๋ ค๋ฐ›๊ธฐ๋ฅผ ์ง„ํ–‰ํ•˜๊ณ ์ž ํ•œ๋‹ค ๋‚ด๋ ค๋ฐ›์„ ๋ฆฌ๋ˆ…์Šค ์ด๋ฏธ์ง€๋Š” ์šฐ๋ถ„ํˆฌ ์ด๋‹ค.

 

1) docker์—์„œ ์šฐ๋ถ„ํˆฌ ์ฐพ๊ธฐ

docker search ubuntu

2) docker ์šฐ๋ถ„ํˆฌ ๋‚ด๋ ค๋ฐ›๊ธฐ

 docker pull ubuntu

 

3) docker ์ด๋ฏธ์ง€ ํ™•์ธ

docker images

 

 

3) docker ์ด๋ฏธ์ง€ ํ™•์ธ

1๋ฒˆ์—์„œ ์„ค์น˜ํ•œ Docker Desktop ์— ์ ‘์†ํ•˜๋ฉด ์•„๋ž˜ ์‚ฌ์ง„๊ณผ ๊ฐ™์ด ๋‚ด๋ ค๋ฐ›์€ ์šฐ๋ถ„ํˆฌ ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ํ™•์ธ ๊ฐ€๋Šฅํ•จ.

 

4) docker ์šฐ๋ถ„ํˆฌ ์ด๋ฏธ์ง€ํŒŒ์ผ -> ์ปจํ…Œ์ด๋„ˆ ๋ณ€๊ฒฝ 

docker create -it --name ubuntu_server ubuntu

 

 

3. docker ์šฐ๋ถ„ํˆฌ container ์‹œ์ž‘ํ•˜๊ธฐ

1) ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ํ†ตํ•ด ์šฐ๋ถ„ํˆฌ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์‹œ์ž‘

 docker start ubuntu_server

2) docker ์šฐ๋ถ„ํˆฌ ์ ‘์†

docker attach ubuntu_server

 

3) docker ์šฐ๋ถ„ํˆฌ ์—…๋ฐ์ดํŠธ, ์—…๊ทธ๋ ˆ์ด๋“œ  ์ง„ํ–‰

apt-get update
apt-get upgrade

 

----------------------------------------------------------------------------------------------------------------

 

 

1. ๋„์ปค ์„ค์น˜(์šฐ๋ถ„ํˆฌ)

์ด๋ฒˆ์—๋Š” ์šฐ๋ถ„ํˆฌ ํ™˜๊ฒฝ์—์„œ ๋„์ปค ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•˜๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

 

 

1)  ํ•„์ˆ˜ ํŒจํ‚ค์ง€ ์„ค์น˜

sudo apt-get update

sudo apt-get install -y \
    ca-certificates \
    curl \
    gnupg \
    lsb-release

 

2) Docker์˜Offical GPG Key ๋“ฑ๋ก

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

3) stable repository ๋“ฑ๋ก

 echo \
  "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
  
  
  sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

 

2.  Docker Engine ์„ค์น˜ํ•˜๊ธฐ

1) ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ์ž๋™์œผ๋กœ ์ตœ์‹ ๋ฒ„์ „ ์„ค์น˜

sudo apt-get install docker-ce docker-ce-cli containerd.io

2) ์„ค์น˜ ํ™•์ธ

sudo docker version

 

3) ๋„์ปค ์‹คํ–‰ํ•˜๊ธฐ

sudo systemctl enable docker
sudo systemctl start docker

sudo systemctl enable containerd
sudo systemctl start containerd

 

4) ์ƒํƒœํ™•์ธ

sudo systemctl status docker

+ Recent posts