I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this: pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $ I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid? It seems to run, but closes itself in under a minute: pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $ slirp4netns is already the newest version (1.0.1-2). Could someone please suggest what to check next? Loren
On 6/27/22 17:59, Loren Amelang wrote:
I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this:
pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $
I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid?
It seems to run, but closes itself in under a minute:
pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $
pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $
slirp4netns is already the newest version (1.0.1-2).
Could someone please suggest what to check next?
Loren _______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
Hi Loren, Check the container logs with `podman logs <Container ID or name> `. Paul On Sat, Jul 2, 2022 at 1:18 PM Daniel Walsh <dwalsh@redhat.com> wrote:
On 6/27/22 17:59, Loren Amelang wrote:
I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this:
pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $
I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid?
It seems to run, but closes itself in under a minute:
pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $
pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $
slirp4netns is already the newest version (1.0.1-2).
Could someone please suggest what to check next?
Loren _______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
take a look at this busybox httpd https://github.com/containers/podman-compose/blob/devel/tests/nets_test1/doc... podman run -dt -p 8088:8088/tcp docker.io/library/busybox httpd -f -h /etc/ -p 8088 then try curl http://localhost:8088/hosts what is your podman version? what is your network stack? mine is 4.x and my network is netavark $ podman info | grep -i net networkBackend: netavark On Mon, Jul 4, 2022 at 4:56 PM Paul Holzinger <pholzing@redhat.com> wrote:
Hi Loren,
Check the container logs with `podman logs <Container ID or name> `.
Paul
On Sat, Jul 2, 2022 at 1:18 PM Daniel Walsh <dwalsh@redhat.com> wrote:
On 6/27/22 17:59, Loren Amelang wrote:
I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this:
pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $
I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid?
It seems to run, but closes itself in under a minute:
pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $
pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $
slirp4netns is already the newest version (1.0.1-2).
Could someone please suggest what to check next?
Loren _______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
_______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
Thanks for the replies! Just tried these suggestions... On 7/4/2022 8:28 AM, Muayyad AlSadi wrote:
take a look at this busybox httpd
https://github.com/containers/podman-compose/blob/devel/tests/nets_test1/doc... <https://github.com/containers/podman-compose/blob/devel/tests/nets_test1/docker-compose.yml>
podman run -dt -p 8088:8088/tcp docker.io/library/busybox <http://docker.io/library/busybox> httpd -f -h /etc/ -p 8088
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:8088/tcp docker.io/library/busybox httpd -f -h /etc/ -p 8088 Trying to pull docker.io/library/busybox:latest... Getting image source signatures Copying blob 7ceae7886eaf done Copying config 2c4cda7768 done Writing manifest to image destination Storing signatures f35572766e57f7250220d2ca337eb2d690a47bae4279b2d8bb946d504c8f9e4c
then try
curl http://localhost:8088/hosts <http://localhost:8088/hosts>
pi@raspberrypi:~/tripod $ curl http://localhost:8088/hosts curl: (7) Failed to connect to localhost port 8088: Connection refused pi@raspberrypi:~/tripod $ podman logs busybox Error: no container with name or ID busybox found: no such container pi@raspberrypi:~/tripod $ Tried again: pi@raspberrypi:~/tripod $ podman run -dt -p 8088:8088/tcp docker.io/library/busybox httpd -f -h /etc/ -p 8088 5a851789c05d18468303484a2d5c8f932f1b789fce086d23fd42b50430243d51 pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 7 days ago Exited (139) 7 days ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 7 days ago Exited (139) 7 days ago 0.0.0.0:8088->80/tcp pedantic_yonath f35572766e57 docker.io/library/busybox:latest httpd -f -h /etc/... 3 minutes ago Exited (139) 3 minutes ago 0.0.0.0:8088->8088/tcp optimistic_archimedes 5a851789c05d docker.io/library/busybox httpd -f -h /etc/... 22 seconds ago Exited (139) 20 seconds ago 0.0.0.0:8088->8088/tcp trusting_dirac
what is your podman version?
pi@raspberrypi:~/tripod $ podman version Version: 3.0.1 API Version: 3.0.0 Go Version: go1.15.15 Built: Wed Dec 31 16:00:00 1969 OS/Arch: linux/arm
what is your network stack?
pi@raspberrypi:~/tripod $ podman info | grep -i net capabilities: CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_FOWNER,CAP_FSETID,CAP_KILL,CAP_NET_BIND_SERVICE,CAP_SETFCAP,CAP_SETGID,CAP_SETPCAP,CAP_SETUID,CAP_SYS_CHROOT slirp4netns: executable: /usr/bin/slirp4netns package: 'slirp4netns: /usr/bin/slirp4netns' slirp4netns version 1.0.1 pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman info --format {{.Host.NetworkBackend}} Error: template: info:1:7: executing "info" at <.Host.NetworkBackend>: can't evaluate field NetworkBackend in type *define.HostInfo pi@raspberrypi:~/tripod $ podman network ls NAME VERSION PLUGINS pi@raspberrypi:~/tripod $
mine is 4.x and my network is netavark
Looks like mine is 3.0.1, and netavark requires 4.0.0. I supposedly installed the latest podman, only a week ago - but for the Pi Zero W's 32-bit ARMv6. Everyone seems to provide v6 versions of things, and they seem to install, but I'm getting more and more convinced that they just don't work.
On Mon, Jul 4, 2022 at 4:56 PM Paul Holzinger <pholzing@redhat.com <mailto:pholzing@redhat.com>> wrote:
Hi Loren,
Check the container logs with `podman logs <Container ID or name> `.
pi@raspberrypi:~/tripod $ podman logs 787779b20e96 pi@raspberrypi:~/tripod $ podman logs 54a005199e38 pi@raspberrypi:~/tripod $ podman logs httpd Error: no container with name or ID httpd found: no such container pi@raspberrypi:~/tripod $ podman logs docker.io/library/httpd Error: no container with name or ID docker.io/library/httpd found: no such container pi@raspberrypi:~/tripod $ So the ID numbers don't show errors, the names do. Not sure what that means... But seems there are no logs. I suspect since the run ends in under two seconds, there really aren't any logs. Where would the logs be stored in my filesystem? Would the names include "podman"? Searching for logs, I saw: pi@raspberrypi:~ $ cat /etc/cni/net.d/87-podman-ptp.conflist { "cniVersion": "0.4.0", "name": "podman", "plugins": [ { "type": "ptp", "Documentation": "/usr/share/doc/containernetworking-plugins/main_ptp.md", "ipMasq": true, "ipam": { "type": "host-local", "Documentation": "/usr/share/doc/containernetworking-plugins/ipam_host-local.md", "subnet": "172.16.16.0/24", "routes": [ { "dst": "0.0.0.0/0" } ] } }, { "type": "portmap", "Documentation": "/usr/share/doc/containernetworking-plugins/meta_portmap.md", "capabilities": { "portMappings": true } }, { "type": "firewall", "Documentation": "/usr/share/doc/containernetworking-plugins/meta_firewall.md", "backend": "iptables" } ] } pi@raspberrypi:~ $ So looks like I do have the old CNI networking. pi@raspberrypi:~ $ sudo find / -iname '*cni*' /usr/lib/systemd/system/cni-dhcp.socket /usr/lib/systemd/system/cni-dhcp.service /usr/lib/cni /usr/share/doc/buildah/examples/cni-examples /usr/share/doc/podman/examples/cni /var/lib/systemd/deb-systemd-helper-enabled/cni-dhcp.service.dsh-also /var/lib/systemd/deb-systemd-helper-enabled/cni-dhcp.socket.dsh-also /etc/cni pi@raspberrypi:~ $ Is there any chance of this working in 32-bit ARMv6? Loren
On 6/27/22 17:59, Loren Amelang wrote: > I've installed Podman on a Raspberry Pi Zero W, and want to test the > network connection. I found this: > > pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd <http://docker.io/library/httpd> > > pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp > docker.io/library/httpd <http://docker.io/library/httpd> > 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 > pi@raspberrypi:~/tripod $ > > I chose "8088:80" because incoming port 8080 is already in use and > working on that Pi. Seems that is valid? > > It seems to run, but closes itself in under a minute: > > pi@raspberrypi:~/tripod $ podman ps -a > CONTAINER ID IMAGE COMMAND CREATED > STATUS PORTS NAMES > 54a005199e38 docker.io/library/httpd <http://docker.io/library/httpd> httpd-foreground 26 minutes > ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck > 787779b20e96 docker.io/library/httpd <http://docker.io/library/httpd> httpd-foreground 18 seconds > ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath > pi@raspberrypi:~/tripod $ > > pi@raspberrypi:~/tripod $ podman logs -l > pi@raspberrypi:~/tripod $ > pi@raspberrypi:~/tripod $ podman top -l > Error: top can only be used on running containers > pi@raspberrypi:~/tripod $ > > slirp4netns is already the newest version (1.0.1-2). > > Could someone please suggest what to check next? > > Loren > _______________________________________________ > Podman mailing list -- podman@lists.podman.io <mailto:podman@lists.podman.io> > To unsubscribe send an email to podman-leave@lists.podman.io <mailto:podman-leave@lists.podman.io>
_______________________________________________ Podman mailing list -- podman@lists.podman.io <mailto:podman@lists.podman.io> To unsubscribe send an email to podman-leave@lists.podman.io <mailto:podman-leave@lists.podman.io>
_______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
Does the journal show anything? What about if you run the container with -it instead of dt? On Fri, Jul 1, 2022 at 7:08 PM Loren Amelang <loren@psychoros.com> wrote:
I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this:
pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $
I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid?
It seems to run, but closes itself in under a minute:
pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $
pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $
slirp4netns is already the newest version (1.0.1-2).
Could someone please suggest what to check next?
Loren _______________________________________________ Podman mailing list -- podman@lists.podman.io To unsubscribe send an email to podman-leave@lists.podman.io
Some more exploration... On 7/7/2022 6:13 AM, Brent Baude wrote:
Does the journal show anything?
Here's a pair of today's tests of busybox: --- 8 14:59:48 raspberrypi systemd[1769]: Started podman-3127.scope. Jul 8 14:59:49 raspberrypi systemd[1769]: podman-3127.scope: Succeeded. Jul 8 15:00:52 raspberrypi systemd[1769]: Started podman-3143.scope. Jul 8 15:00:53 raspberrypi podman[3143]: 2022-07-08 15:00:53.486842312 -0700 PDT m=+1.280987120 container create 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 (image=docker.io/library/busybox, name=stupefied_napier) Jul 8 15:00:55 raspberrypi systemd[1769]: Started libpod-conmon-06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9.scope. Jul 8 15:00:55 raspberrypi systemd[1769]: Started libcrun container. Jul 8 15:00:55 raspberrypi podman[3143]: 2022-07-08 15:00:55.388172193 -0700 PDT m=+3.182316001 container init 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 (image=docker.io/library/busybox, name=stupefied_napier) Jul 8 15:00:55 raspberrypi podman[3143]: 2022-07-08 15:00:55.488570343 -0700 PDT m=+3.282714151 container start 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 (image=docker.io/library/busybox, name=stupefied_napier) Jul 8 15:00:55 raspberrypi systemd[1769]: libpod-06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9.scope: Succeeded. Jul 8 15:00:56 raspberrypi podman[3179]: 2022-07-08 15:00:56.276711672 -0700 PDT m=+0.687357184 container died 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 (image=docker.io/library/busybox, name=stupefied_napier) Jul 8 15:00:56 raspberrypi podman[3179]: 2022-07-08 15:00:56.494778828 -0700 PDT m=+0.905422340 container cleanup 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 (image=docker.io/library/busybox, name=stupefied_napier) Jul 8 15:00:56 raspberrypi systemd[1769]: libpod-conmon-06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9.scope: Succeeded. Jul 8 15:00:56 raspberrypi systemd[1769]: podman-3143.scope: Succeeded. Jul 8 15:00:56 raspberrypi systemd[1769]: podman-3143.scope: Consumed 2.254s CPU time. Jul 8 15:01:10 raspberrypi systemd[1769]: Started podman-3197.scope. Jul 8 15:01:11 raspberrypi podman[3197]: 2022-07-08 15:01:11.396364918 -0700 PDT m=+1.308845119 container create aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:12 raspberrypi systemd[1769]: Started libpod-conmon-aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea.scope. Jul 8 15:01:13 raspberrypi systemd[1769]: Started libcrun container. Jul 8 15:01:13 raspberrypi podman[3197]: 2022-07-08 15:01:13.278807296 -0700 PDT m=+3.191287497 container init aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:13 raspberrypi systemd[1769]: libpod-aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea.scope: Succeeded. Jul 8 15:01:13 raspberrypi podman[3197]: 2022-07-08 15:01:13.385817409 -0700 PDT m=+3.298297610 container start aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:13 raspberrypi podman[3197]: 2022-07-08 15:01:13.402239273 -0700 PDT m=+3.314719474 container attach aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:13 raspberrypi podman[3197]: 2022-07-08 15:01:13.467163735 -0700 PDT m=+3.379643936 container died aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:14 raspberrypi podman[3234]: 2022-07-08 15:01:14.457229534 -0700 PDT m=+1.003770687 container cleanup aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea (image=docker.io/library/busybox, name=romantic_bohr) Jul 8 15:01:14 raspberrypi systemd[1769]: libpod-conmon-aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea.scope: Succeeded. Jul 8 15:01:14 raspberrypi systemd[1769]: libpod-conmon-aaa56d68a58058bb94977be12d3d2e6961c6de4877ec6442d9e52b0b5244d6ea.scope: Consumed 1.014s CPU time. Jul 8 15:01:14 raspberrypi systemd[1769]: podman-3197.scope: Succeeded. Jul 8 15:01:14 raspberrypi systemd[1769]: podman-3197.scope: Consumed 2.304s CPU time. Jul 8 15:01:25 raspberrypi systemd[1769]: Started podman-3252.scope. Jul 8 15:01:26 raspberrypi systemd[1769]: podman-3252.scope: Succeeded. --- First run, and all July 4 runs with "podman run -dt", show "init, start, died, cleanup". Second runs today, with "podman run -it", show "init, start, attach, died, cleanup". What about if you run the container with -it instead of dt? pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/busybox 06268f3312b11ffb1a7fa6b8ebd411032aa3ed1edc967acf4287a7b82ff46dc9 pi@raspberrypi:~/tripod $ podman run -it -p 8088:80/tcp docker.io/library/busybox pi@raspberrypi:~/tripod $ The -it runs don't print the long number, they just end with a new terminal prompt. pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd httpd-foreground 11 days ago Exited (139) 11 days ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd httpd-foreground 11 days ago Exited (139) 11 days ago 0.0.0.0:8088->80/tcp pedantic_yonath f35572766e57 docker.io/library/busybox:latest httpd -f -h /etc/... 3 days ago Exited (139) 3 days ago 0.0.0.0:8088->8088/tcp optimistic_archimedes 5a851789c05d docker.io/library/busybox httpd -f -h /etc/... 3 days ago Exited (139) 3 days ago 0.0.0.0:8088->8088/tcp trusting_dirac 03c8f8d17e9f docker.io/library/httpd httpd-foreground 2 minutes ago Exited (139) 2 minutes ago 0.0.0.0:8088->80/tcp lucid_dirac cd3fd49d952b docker.io/library/httpd httpd-foreground 2 minutes ago Exited (139) 2 minutes ago 0.0.0.0:8088->80/tcp practical_mclean 06268f3312b1 docker.io/library/busybox sh 32 seconds ago Exited (139) 31 seconds ago 0.0.0.0:8088->80/tcp stupefied_napier aaa56d68a580 docker.io/library/busybox sh 14 seconds ago Exited (139) 13 seconds ago 0.0.0.0:8088->80/tcp romantic_bohr pi@raspberrypi:~/tripod $ I peeked at the files mentioned in 'podman info --debug': pi@raspberrypi:~/tripod $ ls -al /usr/bin/conmon -rwxr-xr-x 1 root root 125760 Jul 14 2021 /usr/bin/conmon pi@raspberrypi:~ $ cat /usr/bin/conmon --> A lot of that was binary, but in the middle were lots of readable errors. attached to this message as a file. (Does that work?) pi@raspberrypi:~/tripod $ cat /home/pi/.config/containers/storage.conf cat: /home/pi/.config/containers/storage.conf: No such file or directory pi@raspberrypi:~/tripod $ ls -alRu /home/pi/.config /home/pi/.config: total 12 drwx------ 3 pi pi 4096 Jan 25 14:51 . drwxr-xr-x 13 pi pi 4096 Oct 30 2021 .. drwx------ 2 pi pi 4096 Jan 25 14:51 configstore /home/pi/.config/configstore: total 12 drwx------ 2 pi pi 4096 Jan 25 14:51 . drwx------ 3 pi pi 4096 Jan 25 14:51 .. -rw------- 1 pi pi 55 Jan 25 16:00 update-notifier-npm.json pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ ls -al /home/pi/.local/share/containers/storage total 44 drwx------ 10 pi pi 4096 Jun 6 13:46 . drwx------ 3 pi pi 4096 Jun 6 13:38 .. drwx------ 2 pi pi 4096 Jun 27 13:08 cache drwx------ 2 pi pi 4096 Jun 6 13:38 libpod drwx------ 2 pi pi 4096 Jun 6 13:38 mounts drwx------ 25 pi pi 4096 Jul 8 15:01 overlay drwx------ 10 pi pi 4096 Jul 8 15:01 overlay-containers drwx------ 5 pi pi 4096 Jul 4 18:54 overlay-images drwx------ 2 pi pi 4096 Jul 8 15:01 overlay-layers -rw-r--r-- 1 pi pi 64 Jul 8 15:34 storage.lock drwx------ 2 pi pi 4096 Jun 6 13:38 tmp -rw-r--r-- 1 pi pi 0 Jun 6 13:38 userns.lock pi@raspberrypi:~/tripod $ The "overlay-..." folders have lots of subfolders with hundreds of files in them. pi@raspberrypi:~ $ cat /home/pi/.local/share/containers/storage/overlay-layers/layers.json --> lots of data, including: {"id":"f7251d37a987c816499833029eae4f371a1f292da0f773b797d8f47c7abac051","names":["stupefied_napier-layer"],"parent":"80049bd614bc195dcb3e2cf825263a084c09413bd1c5280813cc3e2ade451d27","created":"2022-07-08T22:00:53.291081974Z"},{"id":"20780baabf7285b33e1c310ade29f000de4bec64aa5f9798f6a7475bc4ef28ec","names":["romantic_bohr-layer"],"parent":"80049bd614bc195dcb3e2cf825263a084c09413bd1c5280813cc3e2ade451d27","created":"2022-07-08T22:01:11.207197489Z"}] Obviously a lot of podman is alive and running, but when I try an actual app like busybox, it dies in two seconds. Where to look next? Loren
On Fri, Jul 1, 2022 at 7:08 PM Loren Amelang <loren@psychoros.com <mailto:loren@psychoros.com>> wrote:
I've installed Podman on a Raspberry Pi Zero W, and want to test the network connection. I found this:
pi@raspberrypi:~/tripod $ podman pull docker.io/library/httpd <http://docker.io/library/httpd>
pi@raspberrypi:~/tripod $ podman run -dt -p 8088:80/tcp docker.io/library/httpd <http://docker.io/library/httpd> 54a005199e38260bae58a6a5437dd0fbde62f2f596b25d928fb346328cfc9e73 pi@raspberrypi:~/tripod $
I chose "8088:80" because incoming port 8080 is already in use and working on that Pi. Seems that is valid?
It seems to run, but closes itself in under a minute:
pi@raspberrypi:~/tripod $ podman ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 54a005199e38 docker.io/library/httpd <http://docker.io/library/httpd> httpd-foreground 26 minutes ago Exited (139) 26 minutes ago 0.0.0.0:8088->80/tcp hopeful_buck 787779b20e96 docker.io/library/httpd <http://docker.io/library/httpd> httpd-foreground 18 seconds ago Exited (139) 16 seconds ago 0.0.0.0:8088->80/tcp pedantic_yonath pi@raspberrypi:~/tripod $
pi@raspberrypi:~/tripod $ podman logs -l pi@raspberrypi:~/tripod $ pi@raspberrypi:~/tripod $ podman top -l Error: top can only be used on running containers pi@raspberrypi:~/tripod $
slirp4netns is already the newest version (1.0.1-2).
Could someone please suggest what to check next?
Loren _______________________________________________ Podman mailing list -- podman@lists.podman.io <mailto:podman@lists.podman.io> To unsubscribe send an email to podman-leave@lists.podman.io <mailto:podman-leave@lists.podman.io>
On 7/8/22 20:32, Loren Amelang wrote:
Exited (139)
I'm not an expert, but this seems like a significant clue. Every single one of your httpd containers exits like this. I think something's wrong/broken with the image itself. Try something simpler, like running a simple busybox or alpine image, with port redirects. You can easily do client/server debugging interactively using nc (or netcat or ncat, whichever is available). Point is, see if you can get communication flowing across a redirected port in a very simple setup first. If this works, then it suggests the problem is inside the httpd image (or your usage of it). -- Chris Evich (he/him), RHCA III Senior Quality Assurance Engineer My personal robot overlord told me to include this signature line.
On 7/12/2022 12:41 PM, Chris Evich wrote: ---
Exited (139)
I'm not an expert, but this seems like a significant clue. Every single one of your httpd containers exits like this. I think something's wrong/broken with the image itself. Try something simpler, like running a simple busybox or alpine image, with port redirects. --- Searching led to this: https://github.com/containers/podman/issues/1118 ----- [vagrant@localhost ~]$ sudo -s [root@localhost vagrant]# podman run busybox echo hello world [root@localhost vagrant]# echo $? 139 podman version 0.7.1 Can you add a --log-level=debug between podman and run to get debug-level logs and try and see what's going wrong? ----- I get the 139 fail even without the port redirect: pi@raspberrypi:~/tripod $ podman --version podman version 3.0.1 pi@raspberrypi:~/tripod $ podman run --rm -it busybox echo hello world pi@raspberrypi:~/tripod $ echo $? 139 But lots of debug runs on the web have that crun/runc/kata error 139 and it doesn't seem to be the main problem... Regular echo works: pi@raspberrypi:~/tripod $ echo hello world hello world pi@raspberrypi:~/tripod $ podman --log-level=debug run busybox echo hello world [Full output in attached file...] ... INFO[0000] Error initializing configured OCI runtime runc: no valid executable found for OCI runtime runc: invalid argument INFO[0000] Error initializing configured OCI runtime kata: no valid executable found for OCI runtime kata: invalid argument ... [conmon:d]: failed to write to /proc/self/oom_score_adj: Permission denied ... EBU[0002] Received: 7703 INFO[0002] Got Conmon PID as 7700 DEBU[0002] Created container 96483125cc3a225c33a354bf903970705b0d89daa66f3cbc3fe6d65a36269e5b in OCI runtime DEBU[0002] Attaching to container 96483125cc3a225c33a354bf903970705b0d89daa66f3cbc3fe6d65a36269e5b DEBU[0002] Starting container 96483125cc3a225c33a354bf903970705b0d89daa66f3cbc3fe6d65a36269e5b with command [echo hello world] DEBU[0002] Started container 96483125cc3a225c33a354bf903970705b0d89daa66f3cbc3fe6d65a36269e5b DEBU[0002] Enabling signal proxying DEBU[0002] Called run.PersistentPostRunE(podman --log-level=debug run busybox echo hello world) pi@raspberrypi:~/tripod $ https://devopscube.com/podman-tutorial-beginners/ ----- If you don’t have runc installed, you might get the following error. Error: default OCI runtime "runc" not found: invalid argument ----- pi@raspberrypi:~/tripod $ sudo apt-get -y install runc [Apparently successful] --> runc error gone, but still: INFO[0000] Error initializing configured OCI runtime kata: no valid executable found for OCI runtime kata: invalid argument DEBU[0000] using runtime "/usr/bin/crun" DEBU[0000] using runtime "/usr/bin/runc" Seems to be a hot mess of confusion about crun vs. runc - sites saying one or the other is correct, that the problems are fixed, and that they really aren't... Looks like I need both! https://github.com/kata-containers/documentation/blob/master/install/snap-in... ----- Kata Containers can be installed in any Linux distribution that supports snapd. NOTE: From Kata Containers 2.x, only the Containerd Runtime V2 (Shim API) is supported, note that some container engines (docker, podman, etc) may not be able to run Kata Containers 2.x. ----- Clearly a 32-bit Pi can't run Kata Containers 2.x. Apparently the 1.x version can supposedly be installed: pi@raspberrypi:~ $ sudo apt-get -y install snapd ... Job for snapd.service failed because the control process exited with error code. See "systemctl status snapd.service" and "journalctl -xe" for details. --- Jul 12 16:51:04 raspberrypi systemd[1]: snapd.service: Failed with result 'exit-code'. Jul 12 16:51:04 raspberrypi systemd[1]: Failed to start Snap Daemon. Jul 12 16:51:04 raspberrypi systemd[1]: snapd.service: Triggering OnFailure= dependencies. Jul 12 16:51:04 raspberrypi systemd[1]: snapd.service: Failed to enqueue OnFailure= job, ignoring: Unit snapd.failure.service not found. --- --- Jul 12 14:08:50 raspberrypi /usr/bin/podman[7705]: time="2022-07-12T14:08:50-07:00" level=debug msg="Initializing event backend journald" Jul 12 14:08:50 raspberrypi /usr/bin/podman[7705]: time="2022-07-12T14:08:50-07:00" level=info msg="Error initializing configured OCI runtime kata: no valid executable found for OCI runtime kata: invalid argument" Jul 12 14:08:50 raspberrypi /usr/bin/podman[7705]: time="2022-07-12T14:08:50-07:00" level=debug msg="using runtime \"/usr/bin/crun\"" Jul 12 14:08:50 raspberrypi /usr/bin/podman[7705]: time="2022-07-12T14:08:50-07:00" level=info msg="Error initializing configured OCI runtime runc: no valid executable found for OCI runtime runc: invalid argument" ... Jul 12 16:07:45 raspberrypi conmon[8181]: conmon b2b1159879569be673d9 <nwarn>: stdio_input read failed Input/output error ... ░░ The unit UNIT has successfully entered the 'dead' state. Jul 12 16:50:59 raspberrypi snapd[8454]: cannot run daemon: state startup errors: [cannot obtain snap-seccomp version information: Jul 12 16:50:59 raspberrypi snapd[8454]: ----- Jul 12 16:50:59 raspberrypi snapd[8454]: 2022/07/12 16:50:59 unknown kernel arch "armv6l" Jul 12 16:50:59 raspberrypi snapd[8454]: panic: unknown kernel arch "armv6l" --- Looks to me like running this on a 32-bit Pi is just not going to work, despite claims it can! Loren On 7/12/2022 12:41 PM, Chris Evich wrote:
On 7/8/22 20:32, Loren Amelang wrote:
Exited (139)
I'm not an expert, but this seems like a significant clue. Every single one of your httpd containers exits like this. I think something's wrong/broken with the image itself.
Try something simpler, like running a simple busybox or alpine image, with port redirects. You can easily do client/server debugging interactively using nc (or netcat or ncat, whichever is available).
Point is, see if you can get communication flowing across a redirected port in a very simple setup first. If this works, then it suggests the problem is inside the httpd image (or your usage of it).
Ahh, there you go. So testing simpler-stuff was key. I'm glad it led to a smoking gun. On 7/13/22 01:31, Loren Amelang wrote:
Looks to me like running this on a 32-bit Pi is just not going to work, despite claims it can!
The 'runc' you're obtaining is likely very old (not your fault) and I don't think 'crun' is available in the native rasbian or ubuntu repos. Worse, I can say for certain no 32bit testing happens in upstream CI. Let alone for ARM (yet). I have no idea if/what/who/where 32bit ARM testing happens downstream. There _is_ activity to introduce upstream podman testing on 64bit ARM. So that will improve in the future. There's also likely much more downstream testing on 64bit ARM. In any case, I expect you'd have better luck here (assuming aarch64 hardware - Piv3 and 4 I think). I'd also suggest using the Fedora images for easy `crun` availability. HTH -- Chris Evich (he/him), RHCA III Senior Quality Assurance Engineer My personal robot overlord told me to include this signature line.
participants (6)
-
Brent Baude -
Chris Evich -
Daniel Walsh -
Loren Amelang -
Muayyad AlSadi -
Paul Holzinger