Cannot connect to Podman. Please verify your connection to the Linux system using `podman system connection list`, or try `podman machine init` and `podman machine start` to manage a new Linux VM Error: unable to connect to Podman. failed to create sshClient: Connection to bastion host (ssh://core@localhost:52568/run/user/1000/podman/podman.sock) failed.: dial tcp [::1]:52568: connect: connection refused
馬上遇到第一個問題,按照提示使用 podman machine init 來建立 Linux VM,運作原理猜測與 Docker on macOS 類似,不過 Docker Desktop 不用手動建立 VM
檢查是否有啟動 podman 需要的 VM:
podman machine list
1 2
NAME VM TYPE CREATED LAST UP CPUS MEMORY DISK SIZE podman-machine-default* qemu 37 minutes ago 3 minutes ago 1 2.147GB 10.74GB
Client: Version: 3.4.1 API Version: 3.4.1 Go Version: go1.17.2 Built: Wed Oct 20 05:14:42 2021 OS/Arch: darwin/amd64
Server: Version: 4.1.1 API Version: 4.1.1 Go Version: go1.18.3 Built: Wed Jun 15 22:31:58 2022 OS/Arch: linux/amd64
使用
搜尋 Image:
podman search busybox
依照 output 可以發現預設是去搜尋 docker hub (hub.docker.com)
1 2 3 4 5
INDEX NAME DESCRIPTION STARS OFFICIAL AUTOMATED docker.io docker.io/library/busybox Busybox base image. 2660 [OK] docker.io docker.io/rancher/busybox 0 docker.io docker.io/ibmcom/busybox 0 ......
下載 Image 到本地:
podman pull busybox
執行 busybox image:
1 2 3 4 5
podman run -it --rm busybox / # / # / # / # exit
使用起來與 Docker 並無二異
發現
registries 設定檔案
故意拉一個不存在的 image
podman pull this-is-error
1
Resolving "this-is-error" using unqualified-search registries (/etc/containers/registries.conf.d/999-podman-machine.conf)
❯ podman machine ssh Connecting to vm podman-machine-default. To close connection, use `~.` or `exit` Warning: Permanently added '[localhost.nctu.edu.tw]:52568' (ED25519) to the list of known hosts. Fedora CoreOS 36.20220703.2.1 Tracker: https://github.com/coreos/fedora-coreos-tracker Discuss: https://discussion.fedoraproject.org/tag/coreos
Last login: Thu Jul 7 01:50:15 2022 from 192.168.127.1 [core@localhost ~]$ cat /etc/containers/registries.conf.d/999-podman-machine.conf unqualified-search-registries=["docker.io"] [core@localhost ~]$
❯ podman run -itd -p 8888:80 nginx be5cb3e60f7b714e3b9c3462610675dd8cc7eaf0c048cdef7c3c8ea011979096
❯ podman run -itd -P nginx 9a2adbd0e86c0083ad0af5bccedc7f5dbaa3b64599c982368f8e64b301eac25d
❯ podman ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES be5cb3e60f7b docker.io/library/nginx:latest nginx -g daemon o... 17 seconds ago Up 18 seconds ago 0.0.0.0:0->0/tcp unruffled_bouman 9a2adbd0e86c docker.io/library/nginx:latest nginx -g daemon o... 3 seconds ago Up 4 seconds ago 0.0.0.0:0->0/tcp laughing_wiles