我有几个 python 网络服务,我试图在 Fedora 15 机器上运行。它们由 Paster 运行,启动它们的唯一区别是它们读取的配置文件。
这似乎很适合 systemd 的实例化服务,但我希望能够将它们作为一个单元进行控制。需要这两种服务的 systemd 目标似乎是解决这个问题的方法。启动目标确实会启动这两个服务,但停止目标会使它们继续运行。
这是服务文件:
[Unit]
Description=AUI Instance on Port %i
After=syslog.target
[Service]
WorkingDirectory=/usr/local/share/aui
ExecStart=/opt/cogo/bin/paster serve --log-file=/var/log/aui/%i deploy-%i.ini
Restart=always
RestartSec=2
User=aui
Group=aui
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
这是目标文件:
[Unit]
Description=AUI
Requires=aui@5001.service
Requires=aui@5002.service
After=syslog.target
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
systemd 甚至可以进行这种分组吗?
我工作的环境有时 DNS 服务器会崩溃并告诉您它无法解析主机(例如,查找“github.com”失败)。它是暂时的,通常恢复得相当快。然而,有时当这种情况发生时,docker 守护进程在用户定义的桥接网络上提供的嵌入式 DNS 服务似乎会缓存错误的结果。一旦被缓存,我们最终需要完全删除网络并重建它(即,docker-compose down然后docker-compose up)。我在运行 docker-engine 17.05.0-ce、build 89658be 的 debian jessie 盒子上看到了这一点。
有没有其他人遇到过这种情况,并且可能找到了比拆除和重建网络更轻量级的解决方案?