## 创建服务文件 以pyhon项目为例 编辑 ``` sudo nano /etc/systemd/system/pykins.service ``` 文件内容 ``` [Unit] Description=python CICD service After=network.target [Service] User=root # 替换为实际用户名(如 ubuntu、root 等) WorkingDirectory=/pathToProject # 项目根目录(包含 .venv 和 main.py) ExecStart=/pathToProject/.venv/bin/python main.py Restart=always RestartSec=10 # 不使用 journal管理日志,直接重定向到文件 # StandardOutput=append:/pathToProject/main.log # 日志文件 # StandardError=append:/pathToProject/main.log # 错误日志与正常日志写在同一个文件,便于还原上下文 [Install] WantedBy=multi-user.target ``` ## 重载systemd服务并启用服务 ``` # 重载配置 sudo systemctl daemon-reload # 开机自启(可选) sudo systemctl enable myblog.service # 启动服务 sudo systemctl start myblog.service ``` ## 相关命令 ``` # 启动 sudo systemctl start myblog # 停止 sudo systemctl stop myblog # 重启 sudo systemctl restart myblog # 查看状态 sudo systemctl status myblog ``` 查看日志 ``` # 实时跟踪日志(类似 tail -f) sudo journalctl -u myapp.service -f # 查看该服务的所有日志 sudo journalctl -u myapp.service # 查看今天的日志 sudo journalctl -u myapp.service --since today # 按 SyslogIdentifier 过滤(需配置该项) sudo journalctl -t myapp ```