compose
compose copied to clipboard
[BUG] COMPOSE_REMOVE_ORPHANS is not respected on the `up` command
Description
I found the environment variable is not being respected when using compose up
.
Looking at the source for compose up
vs the source for compose down
I can see that the COMPOSE_REMOVE_ORPHANS
environment variable is only referenced in the down
command.
Based on the docs (which, admittedly, don't actually describe the variable in detail, just list its presence), I'd expect it to be supported on both up
and down
.
Apologies if this should be a feature request or a ticket about the docs instead of a bug report - please feel free to move it around as relevant.
Steps To Reproduce
- Create an orphaned container via Compose
- Use
COMPOSE_REMOVE_ORPHANS=1 docker compose up -d
Expected: The container (still running) is terminated and removed
Actual: I get a warning about an orphaned container and a recommendation to use the --remove-orphans
flag
Compose Version
$ docker-compose version
Docker Compose version v2.23.3-desktop.2
$ docker compose version
Docker Compose version v2.23.3-desktop.2
$
Docker Environment
docker info
Client:
Version: 24.0.7
Context: desktop-linux
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.12.0-desktop.2
Path: /Users/scott/.docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.23.3-desktop.2
Path: /Users/scott/.docker/cli-plugins/docker-compose
dev: Docker Dev Environments (Docker Inc.)
Version: v0.1.0
Path: /Users/scott/.docker/cli-plugins/docker-dev
extension: Manages Docker extensions (Docker Inc.)
Version: v0.2.21
Path: /Users/scott/.docker/cli-plugins/docker-extension
feedback: Provide feedback, right in your terminal! (Docker Inc.)
Version: 0.1
Path: /Users/scott/.docker/cli-plugins/docker-feedback
init: Creates Docker-related starter files for your project (Docker Inc.)
Version: v0.1.0-beta.10
Path: /Users/scott/.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/scott/.docker/cli-plugins/docker-sbom
scan: Docker Scan (Docker Inc.)
Version: v0.26.0
Path: /Users/scott/.docker/cli-plugins/docker-scan
scout: Docker Scout (Docker Inc.)
Version: v1.2.0
Path: /Users/scott/.docker/cli-plugins/docker-scout
Server:
Containers: 21
Running: 15
Paused: 0
Stopped: 6
Images: 136
Server Version: 24.0.7
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: runc io.containerd.runc.v2
Default Runtime: runc
Init Binary: docker-init
containerd version: d8f198a4ed8892c764191ef7b3b06d8a2eeb5c7f
runc version: v1.1.10-0-g18a0cb0
init version: de40ad0
Security Options:
seccomp
Profile: unconfined
cgroupns
Kernel Version: 6.5.11-linuxkit
Operating System: Docker Desktop
OSType: linux
Architecture: aarch64
CPUs: 8
Total Memory: 7.76GiB
Name: docker-desktop
ID: 85b60fc6-eedd-4b8c-996a-89f62a45ab85
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
Experimental: false
Insecure Registries:
hubproxy.docker.internal:5555
127.0.0.0/8
Live Restore Enabled: false
WARNING: daemon is not using the default seccomp profile
Anything else?
No response
Would you mind offering a pull-request to fix this ?
Happy to give it a shot, but I can't promise when I'll get time to do it (if anyone else wants to action it sooner, feel free, otherwise I'll get to it when I can)
@ShadowLNC / @ndeloof I think I know how to fix this, let me give it a shot
@ndeloof FYI I've created a PR to fix this issue ^^