-
Couldn't load subscription status.
- Fork 5.5k
Closed
Labels
Description
Description
When a service is restarted using the restart subcommand the post_start hook is not run but using sequentially stop then start executes the hook as expected
Steps To Reproduce
With this compose file:
services:
bash:
image: bash
command: bash -c "while true; do echo 'Running...'; sleep 60; done"
post_start:
- command: bash -c "echo started >> /logs"Run the following commands
$ docker compose up -d
[+] Running 2/2
✔ Network tmp_default Created 0.0s
✔ Container tmp-bash-1 Started 0.4s
$ docker compose exec -it bash cat /logs
started
$ docker compose restart bash
[+] Restarting 1/1
✔ Container tmp-bash-1 Started 10.4s
$ docker compose exec -it bash cat /logs
started
[potier_f@pc17166 tmp]$ docker compose stop bash
[+] Stopping 1/1
✔ Container tmp-bash-1 Stopped 10.2s
$ docker compose start bash
[+] Running 1/1
✔ Container tmp-bash-1 Started 0.3s
$ docker compose exec -it bash cat /logs
started
started
Compose Version
$ docker compose version
Docker Compose version v2.40.2
Docker Environment
$ docker info
Client: Docker Engine - Community
Version: 28.5.1
Context: default
Debug Mode: false
Plugins:
buildx: Docker Buildx (Docker Inc.)
Version: v0.29.1
Path: /usr/libexec/docker/cli-plugins/docker-buildx
compose: Docker Compose (Docker Inc.)
Version: v2.40.2
Path: /usr/libexec/docker/cli-plugins/docker-compose
Server:
Containers: 2
Running: 1
Paused: 0
Stopped: 1
Images: 28
Server Version: 28.5.1
Storage Driver: overlay2
Backing Filesystem: xfs
Supports d_type: true
Using metacopy: false
Native Overlay Diff: true
userxattr: false
Logging Driver: json-file
Cgroup Driver: systemd
Cgroup Version: 2
Plugins:
Volume: local
Network: bridge host ipvlan macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file local splunk syslog
CDI spec directories:
/etc/cdi
/var/run/cdi
Swarm: inactive
Runtimes: io.containerd.runc.v2 runc
Default Runtime: runc
Init Binary: docker-init
containerd version: b98a3aace656320842a23f4a392a33f46af97866
runc version: v1.3.0-0-g4ca628d1
init version: de40ad0
Security Options:
seccomp
Profile: builtin
cgroupns
Kernel Version: 5.14.0-570.52.1.el9_6.x86_64
Operating System: Red Hat Enterprise Linux 9.6 (Plow)
OSType: linux
Architecture: x86_64
CPUs: 14
Total Memory: 14.8GiB
Name: pc17166.psi.ch
ID: d802c6d3-1521-490b-8745-0b9e02c2bbbf
Docker Root Dir: /var/lib/docker
Debug Mode: false
Experimental: false
Insecure Registries:
::1/128
127.0.0.0/8
Live Restore Enabled: false
Anything else?
I didn't give it a try but pre_stop hooks might also be skipped