try different Health settings

This commit is contained in:
zenfyr 2026-01-11 10:07:38 +07:00
commit d25b699e27
Signed by: melontini
SSH key fingerprint: SHA256:TtcIcnTnoAB5mqHofsaOxIgiMzfVBxej1AXT7DQdrTE
10 changed files with 52 additions and 27 deletions

View file

@ -6,14 +6,15 @@ Image=docker.io/copyparty/ac:latest
ContainerName=copyparty
Environment=LD_PRELOAD=/usr/lib/libmimalloc-secure.so
Environment=PYTHONUNBUFFERED=1
HealthCmd=wget --spider -q 127.0.0.1:3923/?reset=/._
HealthInterval=1m
HealthTimeout=2s
HealthRetries=5
PublishPort=127.0.0.1:15084:3923
UserNS=keep-id:uid=1000,gid=1000
Volume=/var/containers/copyparty/config:/cfg:Z
Volume=/mnt/ext/copyparty:/w:z
# Health
HealthCmd=wget --spider -q 127.0.0.1:3923/?reset=/._
HealthOnFailure=kill
HealthStartPeriod=1m
Notify=healthy
[Service]
Restart=always

View file

@ -8,14 +8,15 @@ AutoUpdate=registry
SecurityLabelDisable=true
Unmask=ALL
AddDevice=/dev/fuse
HealthCmd=podman info || exit 1
HealthInterval=5s
HealthTimeout=3s
HealthRetries=5
User=podman
Volume=/var/containers/dind/data:/home/podman/.local/share/containers:Z
Volume=/var/run/dind:/var/run/1000:z
Exec=sh -c "podman system service --time=0 unix:///var/run/1000/docker.sock & PID=$!; while [ ! -S /var/run/1000/docker.sock ]; do sleep 0.1; kill -0 $PID 2>/dev/null || exit 1; done && chmod 0666 /var/run/1000/docker.sock && wait $PID"
# Health
HealthCmd=podman info || exit 1
HealthOnFailure=kill
HealthStartPeriod=30s
Notify=healthy
[Service]
Restart=always

View file

@ -7,10 +7,6 @@ ContainerName=mailserver
EnvironmentFile=/etc/containers/systemd/mailserver/.env.secrets
EnvironmentFile=/etc/containers/systemd/mailserver/.env
AddCapability=NET_ADMIN
HealthCmd=ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1
HealthInterval=10s
HealthTimeout=3s
HealthRetries=0
HostName=mx1.synth.download
PublishPort=25:25
PublishPort=143:143
@ -23,10 +19,14 @@ Volume=/var/containers/mailserver/logs:/var/log/mail:Z
Volume=/var/containers/mailserver/config:/tmp/docker-mailserver:Z
Volume=/etc/certs/wildcard_.synth.download.crt:/etc/letsencrypt/live/synth.download/fullchain.pem:ro,z
Volume=/etc/certs/wildcard_.synth.download.key:/etc/letsencrypt/live/synth.download/privkey.pem:ro,z
# Health
HealthCmd=ss --listening --tcp | grep -P 'LISTEN.+:smtp' || exit 1
HealthOnFailure=kill
HealthStartPeriod=1m
Notify=healthy
[Service]
Restart=always
RestartSec=10s
Restart=on-success
[Install]
WantedBy=default.target

View file

@ -10,11 +10,13 @@ Environment=DFLY_default_lua_flags=allow-undeclared-keys
Environment=DFLY_dbfilename=dump.rdb
Environment=DFLY_df_snapshot_format=false
Environment=DFLY_dir=/data
HealthCmd=redis-cli ping
HealthInterval=5s
HealthRetries=20
Network=mastodon.network
Volume=/var/containers/mastodon/dragonfly:/data:Z
# Health
HealthCmd=redis-cli ping
HealthOnFailure=kill
HealthStartPeriod=10s
Notify=healthy
[Service]
Restart=always

View file

@ -9,10 +9,14 @@ ContainerName=mastodon-sidekiq
EnvironmentFile=/etc/containers/systemd/mastodon/.env.secrets
EnvironmentFile=/etc/containers/systemd/mastodon/.env
Exec=bundle exec sidekiq
HealthCmd=ps aux | grep '[s]idekiq 7' || false
Network=mastodon.network
Network=postgresql.network
Volume=/var/containers/mastodon/public/system:/mastodon/public/system:z
# Health
HealthCmd=ps aux | grep '[s]idekiq\ 8' || false
HealthOnFailure=kill
HealthStartPeriod=1m
Notify=healthy
[Service]
Restart=always

View file

@ -9,10 +9,14 @@ ContainerName=mastodon-streaming
EnvironmentFile=/etc/containers/systemd/mastodon/.env.secrets
EnvironmentFile=/etc/containers/systemd/mastodon/.env
Exec=node ./streaming/index.js
HealthCmd=curl -s --noproxy localhost localhost:4000/api/v1/streaming/health | grep -q 'OK' || exit 1
Network=mastodon.network
Network=postgresql.network
PublishPort=127.0.0.1:58834:4000
# Health
HealthCmd=curl -s --noproxy localhost localhost:4000/api/v1/streaming/health | grep -q 'OK' || exit 1
HealthOnFailure=kill
HealthStartPeriod=1m
Notify=healthy
[Service]
Restart=always

View file

@ -9,13 +9,17 @@ ContainerName=mastodon-web
EnvironmentFile=/etc/containers/systemd/mastodon/.env.secrets
EnvironmentFile=/etc/containers/systemd/mastodon/.env
Exec=bundle exec puma -C config/puma.rb
HealthCmd=curl -s --noproxy localhost localhost:3000/health | grep -q 'OK' || exit 1
Network=mastodon.network
Network=postgresql.network
PublishPort=127.0.0.1:46098:3000
Volume=/var/containers/mastodon/public/system:/mastodon/public/system:z
Volume=/var/containers/mastodon/init/disable_ssl.rb:/mastodon/config/initializers/disable_ssl.rb:ro,z
Volume=/var/containers/mastodon/shared:/shared:z
# Health
HealthCmd=curl -s --noproxy localhost localhost:3000/health | grep -q 'OK' || exit 1
HealthOnFailure=kill
HealthStartPeriod=1m
Notify=healthy
[Service]
Restart=always

View file

@ -6,13 +6,14 @@ Image=docker.io/groonga/pgroonga:latest-alpine-18
ContainerName=postgresql
EnvironmentFile=/etc/containers/systemd/postgresql/.env
Network=postgresql.network
HealthCmd=pg_isready -U postgres -d postgres
HealthInterval=40s
HealthTimeout=3s
HealthRetries=20
UserNS=keep-id:uid=999,gid=999
Volume=/var/containers/postgresql/data:/var/lib/postgresql/data:Z
Volume=/var/containers/postgresql/exp:/mnt/exp:Z
# Health
HealthCmd=pg_isready -U postgres -d postgres
HealthOnFailure=kill
HealthStartPeriod=30s
Notify=healthy
[Service]
Restart=always

View file

@ -6,10 +6,13 @@ Image=quay.io/redlib/redlib:latest
ContainerName=redlib
AutoUpdate=registry
EnvironmentFile=/etc/containers/systemd/redlib/.env
HealthCmd=wget --spider -q --tries=1 http://localhost:8080/settings
HealthInterval=5m
HealthTimeout=3s
PublishPort=127.0.0.1:51617:8080
# Health
HealthCmd=wget --spider -q --tries=1 http://localhost:8080/settings
HealthOnFailure=kill
HealthInterval=5m
HealthStartPeriod=30s
Notify=healthy
[Service]
Restart=always

View file

@ -12,6 +12,11 @@ Environment=DFLY_dir=/data
Image=docker.dragonflydb.io/dragonflydb/dragonfly
Network=sharkey.network
Volume=/var/containers/sharkey/dfdb:/data:Z
# Health
HealthCmd=redis-cli ping
HealthOnFailure=kill
HealthStartPeriod=10s
Notify=healthy
[Service]
Restart=always