Netdata.cloud bot for Zulip
1[Unit] 2Description=Netdata Zulip Bot - Webhook service for Netdata Cloud notifications 3After=network.target network-online.target 4Wants=network-online.target 5 6[Service] 7Type=simple 8User=netdata-bot 9Group=netdata-bot 10WorkingDirectory=/opt/netdata-zulip-bot 11Environment=PATH=/opt/netdata-zulip-bot/.venv/bin:/usr/local/bin:/usr/bin:/bin 12 13# Server configuration 14Environment=SERVER_DOMAIN=your-webhook-domain.com 15Environment=SERVER_HOST=0.0.0.0 16Environment=SERVER_PORT=8443 17Environment=SERVER_CERT_PATH=/etc/letsencrypt/live 18Environment=SERVER_ENABLE_MTLS=true 19Environment=SERVER_CLIENT_CA_PATH=/etc/ssl/certs/netdata-ca.pem 20 21# Zulip configuration (if using environment variables instead of zuliprc) 22# Environment=ZULIP_SITE=https://yourorg.zulipchat.com 23# Environment=ZULIP_EMAIL=netdata-bot@yourorg.zulipchat.com 24# Environment=ZULIP_API_KEY=your-api-key 25# Environment=ZULIP_STREAM=netdata-alerts 26 27ExecStart=/opt/netdata-zulip-bot/.venv/bin/netdata-zulip-bot 28ExecReload=/bin/kill -HUP $MAINPID 29 30# Security settings 31NoNewPrivileges=true 32PrivateTmp=true 33ProtectSystem=strict 34ProtectHome=true 35ReadWritePaths=/opt/netdata-zulip-bot 36ReadOnlyPaths=/etc/letsencrypt/live 37 38# Resource limits 39LimitNOFILE=65536 40MemoryHigh=256M 41MemoryMax=512M 42 43# Restart settings 44Restart=always 45RestartSec=5 46StartLimitInterval=60 47StartLimitBurst=3 48 49# Logging 50StandardOutput=journal 51StandardError=journal 52SyslogIdentifier=netdata-zulip-bot 53 54[Install] 55WantedBy=multi-user.target