Docker Desktop 이 유료가 되면서 Windows 에서 Docker 를 사용할 때 대체재 (replacement) 가 필요한 상황이다.
개인 PC에 개인 개발 목적이라면 상관이 없지만, 사내 PC 에서 사용한다면 라이센스 이슈가 발생할 수 있기 때문이다.
Docker Engine 의 대체재로 containerd 를 사용하여 containerd 의 cli 툴인 crt, nerdctl 등을 사용할 수도 있지만 익숙한건 docker 이기에... Docker Desktop 이 아닌 dockerd 와 docker cli 만 설치하는 블로그를 찾아서 이를 기록한다.
참고 링크 : https://lippertmarkus.com/2021/09/04/containers-without-docker-desktop/
Running Windows and Linux containers without Docker Desktop
You certainly already heard about the licensing changes for Docker Desktop. I think spending some money for that is perfectly fine regarding the value Docker Desktop is providing to you. Those licensing changes however only apply to Docker Desktop. If you
lippertmarkus.com
Windows Containers
docker 는 stand-alone windows binaries 를 제공하기에 이를 설치하여 사용할 수 있다.해당 dockerd 는 windows base container 를 수행하기 위해 사용한다.
# in Powershell
# Optionally enable required Windows features if needed
Enable-WindowsOptionalFeature -Online -FeatureName containers –All
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All
curl.exe -o docker.zip -LO https://download.docker.com/win/static/stable/x86_64/docker-20.10.13.zip
Expand-Archive docker.zip -DestinationPath C:\
[Environment]::SetEnvironmentVariable("Path", "$($env:path);C:\docker", [System.EnvironmentVariableTarget]::Machine)
$env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine")
dockerd --register-service
Linux Containers
WSL2 를 사용하여 Linux 용 docker 를 사용할 수 있다.
sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
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 apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
sudo docker run hello-world
# Hello from Docker!
# Automatically start on startup
sudo systemctl enable docker.service
sudo systemctl enable containerd.service
추가로...
위 참고 링크에 보면 Windows 와 Linux 컨테이너를 쉽게 사용하기 위한 추가 설정들이 나와있으니 필요하신 분들은 참고하시면 됩니다.
'개발 노트 > Etc.' 카테고리의 다른 글
[Oracle Cloud] 오라클 Compute instance 에 Postgresql 셋팅 (0) | 2024.08.26 |
---|---|
[Docker] Windows 에서 Docker Engine 만 설치 (w/o Docker Desktop) (1) | 2024.02.25 |
[OS] Windows 캡처 및 스케치 알림오지 않을 때 조치 방법 (0) | 2023.09.22 |
[개발환경] 오라클 자율운영 DB 접속 (w/ SQL Developer) (0) | 2022.09.25 |
[개발환경] WSL Go 설치 및 VSCode 설정 (1) | 2022.09.25 |