[BUG] compose up --wait exits 1 on init containers successfully completing
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 68/100
Línea de trabajo
Empieza reproduciendo el problema con el archivo docker-compose.yml proporcionado y docker compose up --wait; después, sigue el punto de entrada de up --wait cuando gestiona un contenedor de init completado correctamente y sin dependientes. Se considera terminado cuando el comando devuelve el código de salida 0 en este caso, con una prueba de regresión que cubra este comportamiento.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
When using docker compose up --wait, where I have an init container that populates some data and then exits (0), docker compose will exit 1.
If any other container depends on the init container finishing, it will exit properly, as described/exampled in this PR: https://github.com/docker/compose/pull/9572. In my situation however, there is no container that runs a service that depends on the init container finishing.
Steps To Reproduce
docker-compose.yml example:
version: '3'
services:
postgres:
image: postgres:14-alpine
environment:
POSTGRES_DB: postgres
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
healthcheck:
test: ['CMD', 'pg_isready']
postgres_setup:
image: alpine
depends_on:
postgres:
condition: service_healthy
restart: "no"
command: pwd
Run docker compose/print exit code:
$ docker compose up --wait
[+] Running 2/3
✔ Network test_default Created 0.1s
✔ Container test-postgres-1 Healthy 31.9s
⠿ Container test-postgres_setup-1 Waiting 31.9s
container test-postgres_setup-1 exited (0)
$ echo $?
1
Compose Version
Docker Compose version v2.17.3
Docker Environment
Client:
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.10.4
Path: /Users/nathan/.docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.17.3
Path: /Users/nathan/.docker/cli-plugins/docker-compose
dev: Docker Dev Environments (Docker Inc.)
Version: v0.1.0
Path: /Users/nathan/.docker/cli-plugins/docker-dev
extension: Manages Docker extensions (Docker Inc.)
Version: v0.2.19
Path: /Users/nathan/.docker/cli-plugins/docker-extension
init: Creates Docker-related starter files for your project (Docker Inc.)
Version: v0.1.0-beta.4
Path: /Users/nathan/.docker/cli-plugins/docker-init
sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc.)
Version: 0.6.0
Path: /Users/nathan/.docker/cli-plugins/docker-sbom
scan: Docker Scan (Docker Inc.)
Version: v0.26.0
Path: /Users/nathan/.docker/cli-plugins/docker-scan
scout: Command line tool for Docker Scout (Docker Inc.)
Version: v0.10.0
Path: /Users/nathan/.docker/cli-plugins/docker-scout
Server:
Containers: 7
Running: 4
Paused: 0
Stopped: 3
Images: 69
Server Version: 23.0.5
Storage Driver: overlay2
Backing Filesystem: extfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: cgroupfs
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local logentries splunk syslog
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 2806fc1057397dbaeefbea0e4e17bddfbd388f38
runc version: v1.1.5-0-gf19387a
init version: de40ad0
Security Options:
seccomp
Profile: builtin
cgroupns
Kernel Version: 5.15.49-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 5.804GiB
Name: docker-desktop
ID: dc980d43-b287-4b8d-90b1-992be4c7b457
Docker Root Dir: /var/lib/docker
Debug Mode: false
HTTP Proxy: http.docker.internal:3128
HTTPS Proxy: http.docker.internal:3128
No Proxy: hubproxy.docker.internal
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5555
127.0.0.0/8
Live Restore Enabled: false
Anything else?
No response
- Lenguaje dominante
- Go
- Estrellas
- 38.3k
- Forks
- 5.8k
- Merge medio
- 2 d 17 h
- PR fusionados (30 d)
- 47
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la 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 docker/compose
-
kind/feature
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
Los mantenedores suelen responder en 1 día
-
[BUG] `start -p <name>` treats an optional (`required: false`) dependency as requiredPosiblemente ocupada @htoyoda18 la tomó hace 1 día. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 22/100
Los mantenedores suelen responder en 1 día
-
[BUG] docker compose run with `pull_policy: always` has a ruined progress barPosiblemente ocupada @ndeloof la tomó hace 3 días. Abiertokind/bug
docker/compose#14292 · 1 comentario · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
[BUG] `mode` attribute in `configs` works but raises an unsupported warningPosiblemente ocupada @ndeloof la tomó hace 2 días. Abiertokind/bug
Dificultad 3/5 1-2 días Aptitud para principiantes 58/100
docker/compose#14288 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
-
[BUG] pre_start no longer inherits its parent environmentPosiblemente ocupada @ndeloof la tomó hace 3 días. Abiertokind/bug
docker/compose#14287 · 1 asignado ·
Los mantenedores suelen responder en 1 día
Todos los issues de docker/compose
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
open-telemetry/opentelemetry-go-compile-instrumentation#1467 ·
Los mantenedores suelen responder en 3 días
-
Python 3.15 supportPosiblemente ocupada @amnesiaof la tomó hoy. AbiertoL: python L: python:uv
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
dependabot/dependabot-core#16524 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
duplication
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
openvibely/openvibely#1443 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 60/100
canonical/service-mesh#845 ·
Los mantenedores suelen responder en 1 día