Universal image: containers on a user-defined bridge network cannot reach each other
I maintainer di solito rispondono entro 3 giorni
@v-Kaniska244 ci sta già lavorando.
Dal 5/10/2026.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Bug
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- docker, docker-compose, shell
- Ambito
- devops, infrastructure, networking
Direzione di ricerca
Start by reproducing the failure with the supplied Docker Compose example in a fresh universal Codespace, then inspect the universal image setup associated with version 6.1.7 and its Docker networking initialization. Compare nftables and iptables-legacy state before and after startup; done means containers on user-defined bridge networks can communicate without applying the listed workaround.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Summary
In a GitHub Codespace using the default universal image (no devcontainer.json), containers on a user-defined bridge network (e.g. the default network created by docker compose) cannot reach each other. The same compose file works on a regular Docker host.
Environment
- Image: universal, image version 6.1.7 (release v0.4.33, built Thu, 10 Sep 2026 12:15:52 GMT), no devcontainer.json
https://github.com/devcontainers/images/tree/main/src/universal/history/6.1.7.md - Docker: 29.8.0-1 (Moby)
- Docker Compose: v5.5.1
Steps to reproduce
- Create a fresh Codespace with no devcontainer.json (example: https://github.com/mdmourao/docker-api-solved)
- Start any two services with
docker compose up(e.g. postgres:17 + an app) - From another container on the same network:
docker run --rm --network <project>_default postgres:17 pg_isready -h db -p 5432
Expected: db:5432 - accepting connections
Actual: db:5432 - no response
Diagnosis
Two iptables backends are active. iptables (nft) shows Docker's rules with FORWARD ACCEPT, but also prints:
# Warning: iptables-legacy tables present, use iptables-legacy to see them
The legacy FORWARD chain has policy DROP and only allows docker0:
$ sudo iptables-legacy -S FORWARD
-P FORWARD DROP
-A FORWARD -j DOCKER-USER
-A FORWARD -j DOCKER-ISOLATION-STAGE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
Docker 29 programs its rules via nftables, so user-defined bridges (br-*) have no allow rule in the legacy tables. Since net.bridge.bridge-nf-call-iptables = 1, intra-bridge traffic is also evaluated against the legacy FORWARD chain and hits the DROP policy. The default docker0 bridge is unaffected; only user-defined networks (including every compose project) break.
The legacy ruleset looks like one written by an older dockerd using the legacy backend (e.g. during image build or an earlier daemon start), which is then left behind when the current daemon uses nftables.
Workaround
sudo iptables-legacy -P FORWARD ACCEPT
or, more narrowly:
sudo iptables-legacy -I FORWARD -i br+ -o br+ -j ACCEPT
References
Same diagnosis reported in other projects, worked around locally and closed there, but apparently never reported upstream:
- Lingua principale
- Shell
- Stelle
- 2.1k
- Fork
- 971
- Merge medio
- 3g 21h
- PR unite (30g)
- 11
Preparare l'ambiente
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di devcontainers/images
-
Add git-lfs feature to base-ubuntu imageForse già presa Una pull request collegata a questa issue è aperta o già unita. Aperta
Difficoltà 2/5 Mezza giornata Idoneità per principianti 70/100
devcontainers/images#1828 · 1 commento ·
I maintainer di solito rispondono entro 3 giorni
-
sgAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 35/100
devcontainers/images#2038 ·
I maintainer di solito rispondono entro 3 giorni
-
`postCreateCommand` is never executed with `mcr.microsoft.com/devcontainers/base:ubuntu26.04`Forse di nuovo libera @V-Subhankar-infy l’ha presa 67 giorni fa e non c’è nessuna pull request aperta. Aperta
devcontainers/images#1949 · 9 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 3 giorni
-
missing ruby:*-3* variantsForse già presa @casperdcl l’ha presa 87 giorni fa. Aperta
Difficoltà 3/5 1-2 giorni Idoneità per principianti 55/100
devcontainers/images#1906 · 3 commenti ·
I maintainer di solito rispondono entro 3 giorni
-
Inconsistent usernames in base vs universal containersForse di nuovo libera @V-Subhankar-infy l’ha presa 39 giorni fa e non c’è nessuna pull request aperta. Aperta
devcontainers/images#1830 · 1 commento · 1 assegnatario ·
I maintainer di solito rispondono entro 3 giorni
Tutte le issue di devcontainers/images
Issue simili
-
docs: AGENTS.md has no rule against running deploy scripts into the owner's game installForse già presa @thesprockee l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
EchoTools/nevr-runtime#524 ·
I maintainer di solito rispondono entro 1 giorno
-
Install software-properties-common before adding the Suricata PPAForse già presa @himanishpuri l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
Ergane-Foundation/vajra#55 · 2 commenti ·
I maintainer di solito rispondono entro 2 giorni
-
[cifuzz] "Minimizing crashes reduces fuzzing time" is logged for every batch run, even with minimize-crashes offForse già presa @martinfrancois l’ha presa oggi. Aperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 85/100
alunduil/alunduil-chezmoi#914 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 78/100
obra/superpowers#2505 ·
I maintainer di solito rispondono entro 3 giorni