Skip to content

Conversation

@sidneychang
Copy link
Contributor

@sidneychang sidneychang commented Feb 3, 2026

Ensure the PID is written to the runtime-provided --pid-file after container creation. This allows supervisors like conmon to track and reap the container process correctly, preventing early cleanup or EOF failures. This change also ensures that Podman can reliably start urunc containers.

Description

In the current code, there is a --pid-file flag, but in reality, we are not actually writing to the specified pid-file. This causes issues when starting urunc with Podman, preventing it from starting properly.

Related issues

#114

How was this tested?

  • Configure Podman to Use urunc
    I tested using the method described in Check integration of urunc with podman #114 and configured Podman to use urunc as the runtime. I executed the following command to modify the Podman container configuration:
sudo tee /etc/containers/containers.conf >/dev/null <<EOT
[engine]
runtime = "/usr/local/bin/urunc"
EOT
  • Configure the QEMU Path for urunc
    To ensure urunc can locate the QEMU binary, the QEMU path needs to be set in the config.toml file for urunc. The configuration should look like this:
[monitors.qemu]
path = "/usr/bin/qemu-system-x86_64"

Run urunc with Podman
After configuring the runtime and QEMU path, I attempted to run the urunc container using Podman:

podman run --rm -d harbor.nbfc.io/nubificus/urunc/nginx-qemu-unikraft-initrd:latest

result:
image

LLM usage

Using Codex to debug the cause of the issue#114

Checklist

  • I have read the contribution guide.
  • The linter passes locally (make lint).
  • The e2e tests of at least one tool pass locally (make test_ctr, make test_nerdctl, make test_docker, make test_crictl).
  • If LLMs were used: I have read the llm policy.

@netlify
Copy link

netlify bot commented Feb 3, 2026

Deploy Preview for urunc canceled.

Name Link
🔨 Latest commit ee7cdfe
🔍 Latest deploy log https://app.netlify.com/projects/urunc/deploys/69821c5049becb0008b2e925

Ensure the PID is written to the runtime-provided --pid-file after container creation. This allows supervisors like conmon to track and reap the container process correctly, preventing early cleanup or EOF failures. This change also ensures that Podman can reliably start urunc containers.
Signed-off-by: sidneychang <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Check integration of urunc with podman

1 participant