mirror of
https://github.com/cypht-org/cypht.git
synced 2026-04-25 13:05:53 +03:00
[PR #1511] [MERGED] fix(docker): improve container shutdown reliability and speed #1566
Labels
No labels
2fa
I18N
PGP
Security
Security
account
advanced_search
advanced_search
announcement
api_login
authentication
awaiting feedback
blocker
bug
bug
bug
calendar
config
contacts
core
core
devops
docker
docs
duplicate
dynamic_login
enhancement
epic
feature
feeds
framework
github
github
gmail_contacts
good first issue
help wanted
history
history
imap
imap_folders
inline_message
installation
keyboard_shortcuts
keyboard_shortcuts
ldap_contacts
mobile
need-ssh-access
new module set
nux
pop3
profiles
pull-request
question
refactor
release
research
saved_searches
smtp
strategic
tags
tests
themes
website
wordpress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/cypht#1566
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/cypht-org/cypht/pull/1511
Author: @Revisto
Created: 5/11/2025
Status: ✅ Merged
Merged: 5/26/2025
Merged by: @kroky
Base:
master← Head:fix/1502-graceful-container-shutdown📝 Commits (2)
f1bf697Use exec to start supervisord for graceful shutdown793fe2cAdd stop_grace_period for db and cypht services📊 Changes
2 files changed (+3 additions, -1 deletions)
View changed files
📝
docker-compose.dev.yaml(+2 -0)📝
docker/docker-entrypoint.sh(+1 -1)📄 Description
🍰 Pullrequest
This PR fixes a problem where dev containers get stuck to stop when using
docker compose downorCtrl+C.Here's what changed:
docker-entrypoint.sh: I addedexecto startsupervisord. This makessupervisordthe main process (PID 1) in the container. So, when Docker wants to stop the container,supervisordgets the signal directly and can shut down nicely. Before, the script runningsupervisordwas PID 1 and didn't always pass the stop signal correctly. You can read more about whyexechelps here. This makes stopping containers much faster, usually less than a second.docker-compose.dev.yaml: I addedstop_grace_period: 30sfor both thecyphtanddbservices. This gives them 30 seconds to stop cleanly after Docker asks them to, before Docker has to force them to stop.These changes make stopping the dev environment smoother and quicker, and less buggy.
Issues
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.