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...
-----
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).
>