prvng_platform/systemd/provisioning-orchestrator.service

42 lines
962 B
SYSTEMD
Raw Normal View History

2025-10-07 10:59:52 +01:00
[Unit]
Description=Provisioning Orchestrator Service
Documentation=https://github.com/provisioning/docs/orchestrator
Requires=docker.service
After=docker.service network-online.target
Wants=network-online.target
[Service]
Type=simple
WorkingDirectory=/opt/provisioning/platform
EnvironmentFile=-/opt/provisioning/platform/.env
# Start orchestrator container
ExecStart=/usr/bin/docker start -a provisioning-orchestrator
# Stop orchestrator container
ExecStop=/usr/bin/docker stop -t 30 provisioning-orchestrator
# Restart policy
Restart=always
RestartSec=10s
# Health checks
ExecStartPost=/bin/sh -c 'for i in $(seq 1 30); do if curl -f http://localhost:8080/health; then exit 0; fi; sleep 1; done; exit 1'
# Timeouts
TimeoutStartSec=120s
TimeoutStopSec=60s
# Logging
StandardOutput=journal
StandardError=journal
SyslogIdentifier=provisioning-orchestrator
# Resource limits
CPUQuota=200%
MemoryLimit=2G
TasksMax=4096
[Install]
WantedBy=multi-user.target