Podman and Docker Coexist on Windows

為什麼有這種需求 目前我使用容器的主力是 Podman 不過有些跟容器整合的工具(e.g. AWS SAM CLI, act)是只支援 Docker 這套工具的,對於 Podman 的支援官方是從不保證能通。有礙於這類工具實在對於生產力很有幫助,所以開始研究兩者並存的可能性。不過因為 Docker Desktop 因為已經不是免費了,所以目標就是只安裝 docker engine,然後用 docker client cli 來使用 service 。 前置條件 這篇是以 Podman 已經安裝好的情形下來展示,如何接續安裝 Docker engine。 確認 wsl 版本是 version 2 wsl --set-default-version 2 更新 wsl 避免踩到舊版的坑 wsl --update 安裝指定版本號,這邊直接指定最新的 Ubuntu 版本 wsl --install -d Ubuntu-22.04 停止該虛擬機器,因為我們要準備把虛擬硬碟從預設路徑搬移出去 wsl -t Ubuntu-22.04 匯出 wsl --export Ubuntu-22.04 {new path}\Ubuntu-22.04.tar 解除註冊 wsl --unregister Ubuntu-22.04 在新的地方重新註冊虛擬機 wsl --import Ubuntu-22.04 {new path}\Ubuntu-22.04 {new path}\Ubuntu-22.04.tar 進入虛擬機器裡 wsl -d Ubuntu-220.4 --user {your_user_name} ...

January 22, 2024 · 2 分鐘 · 325 字

Podman on Windows

前言 之前主要是因為 Docker Desktop 開始收費 (Docker Subscription Service Agreement | Docker) (Docker CLI 依舊免費 ) 但因為免費條件有點嚴苛,而且通常都是在為了公事使用,為了避免不小心讓公司有意外支出,就開始萌生有沒有更安全的替代解決方案。另外就是 WSL 2 已經很成熟了。 Podman 跟 Docker 目前 (2022/03) 最大的差異應該就是兩者架構不同,Docker 是傳統的 Client-Server 架構它由一個 daemon 來操作所有由 docker cli 產生的 container ,而 Podman 則是不需要 daemon 。這樣可以預防 single point of failure 不會像 docker daemon 一死底下的 container 跟著一起殉情。而多數人在講的 podman 可以 rootless 的優勢則在 docker engine 升級到 20.10 後就也支援 rootless 了,來源在此。 有人針對雙方架構畫了一個很好的圖示 圖片來源: podman_introduction 起步走 =========== ↓↓↓ 25/07/2022 Update ↓↓↓ ============== ...

March 30, 2022 · 4 分鐘 · 756 字