Files
edict/edict.service
cft0808 74d8130391 feat: Week 0-4 optimizations - event bus, state machine, dispatch, outbox relay
- EventBus: Redis Streams pub/sub for decoupled service communication
- State machine: strict lifecycle transitions with audit logging
- Dispatch worker: parallel execution, retry with backoff, resource locking
- Orchestrator: DAG-based task decomposition and dependency resolution
- Outbox relay: transactional outbox pattern for reliable event delivery
- Auth: dashboard authentication module
- Agent groups: sansheng/liubu agent configuration
- CI/CD: Docker publish workflow, systemd service, start script
- Frontend: dashboard build assets
- Tests: state machine consistency tests
2026-04-04 12:16:32 +08:00

39 lines
1.2 KiB
Desktop File

# ══════════════════════════════════════════════════════════════
# 三省六部 · systemd 服务模板
# 部署说明: 复制到 /etc/systemd/system/edict.service
# sudo cp edict.service /etc/systemd/system/
# sudo systemctl daemon-reload
# sudo systemctl enable --now edict
# ══════════════════════════════════════════════════════════════
[Unit]
Description=三省六部 Multi-Agent Orchestration Dashboard
After=network.target
[Service]
Type=forking
User=edict
Group=edict
WorkingDirectory=/opt/edict
ExecStart=/opt/edict/edict.sh start
ExecStop=/opt/edict/edict.sh stop
ExecReload=/opt/edict/edict.sh restart
# PID 跟踪
PIDFile=/opt/edict/.pids/server.pid
# 自动重启
Restart=on-failure
RestartSec=5
# 环境变量(按需修改)
Environment=EDICT_DASHBOARD_HOST=0.0.0.0
Environment=EDICT_DASHBOARD_PORT=7891
# 安全加固
NoNewPrivileges=true
ProtectSystem=strict
ReadWritePaths=/opt/edict/data /opt/edict/logs /opt/edict/.pids
[Install]
WantedBy=multi-user.target