Podman: automatic `--userns=keep-id` breaks containers using host networking
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
Línea de trabajo
Comienza en src/spec-node/singleContainer.ts, en getPodmanArgs(), y compara después cómo se incorporan runArgs y --network=host al comando de Podman generado. Utiliza el reproducer de Alpine del issue para verificar los argumentos en conflicto y confirma que una elección explícita del usuario puede evitar la combinación automática que falla.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
I'm facing an issue when using podman and --network=host combination:
Environment
@devcontainers/cli: 0.88.0- Podman client/server: 5.7.1
- Host: WSL2
- Podman server: rootful
Problem
For Podman on Linux and a non-root remoteUser, Dev Containers automatically adds:
--security-opt label=disable --userns=keep-id
See https://github.com/devcontainers/cli/issues/1004 and https://github.com/microsoft/vscode-remote-release/issues/10399.
When the configuration also requires --network=host, the container fails to start.
Minimal underlying reproducer
This fails:
podman run --rm \
--network=host \
--userns=keep-id \
docker.io/library/alpine:3.20 \
true
Error:
crun: mount `sysfs` to `sys`: Operation not permitted: OCI permission denied
Without --userns=keep-id, it succeeds:
podman run --rm \
--network=host \
docker.io/library/alpine:3.20 \
true
The CLI-generated podman run command contains both:
--userns=keep-id --network=host
The automatic argument is added in:
src/spec-node/singleContainer.ts
getPodmanArgs()
Expected behavior
Users must be able to prevent the CLI from adding --userns=keep-id.
Possible fixes
No one is perfect I'm afraid.
- Do not add
--userns=keep-idwhen--network=hostis present. - Add a setting or CLI option to disable automatic Podman arguments.
- Respect an explicit
--userns=...inrunArgsand do not add--userns=keep-id. - Make automatic
--userns=keep-idopt-in instead of unconditional for non-root users.
Big thanks.
- Lenguaje dominante
- TypeScript
- Estrellas
- 3k
- Forks
- 461
- Merge medio
- 13 h 17 min
- PR fusionados (30 d)
- 6
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de devcontainers/cli
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
devcontainers/cli#1203 ·
-
Dificultad 1/5 1-3 horas Aptitud para principiantes 68/100
devcontainers/cli#1178 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
devcontainers/cli#1308 ·
-
Dificultad 3/5 1-2 días Aptitud para principiantes 78/100
devcontainers/cli#1307 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
devcontainers/cli#1305 ·
Todos los issues de devcontainers/cli
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
ontola/atomic-server#1625 ·
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
melgarafael/DeskcommCRM#1451 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 82/100
-
bug via-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
-
bot:ai-assisted component:compact-js status:untriaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
midnightntwrk/midnight-sdk#403 ·