如何重新加载系统服务?
How to reload systemd service?
我定义了以下服务
[Unit]
Description=Docker Compose Application Service [monitor]
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/eugenekim/Documents/monitor/node-master
ExecStart=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
ExecStop=/usr/local/bin/docker-compose -f docker-compose.log.yml down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
docker-compose.log.yml 文件已更改,甚至 *.service 文件也已更改,但系统坚持运行以某种方式使用旧定义..
我试过 运行 daemon-reload
但没有效果。
当我尝试 运行
sudo systemctl reload docker-log 14469ms
Failed to reload docker-log.service: Job type reload is not applicable for unit docker-log.service.
See system logs and 'systemctl status docker-log.service' for details.
也没有任何作用..
我想你错过了 ExecReload
。
[Unit]
Description=Docker Compose Application Service [monitor]
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/eugenekim/Documents/monitor/node-master
ExecStart=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
# docker compose will watch for changes
ExecReload=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
# or you want a force restart
#ExecReload=/usr/local/bin/docker-compose -f docker-compose.log.yml restart es-log-00
ExecStop=/usr/local/bin/docker-compose -f docker-compose.log.yml down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
我定义了以下服务
[Unit]
Description=Docker Compose Application Service [monitor]
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/eugenekim/Documents/monitor/node-master
ExecStart=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
ExecStop=/usr/local/bin/docker-compose -f docker-compose.log.yml down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target
docker-compose.log.yml 文件已更改,甚至 *.service 文件也已更改,但系统坚持运行以某种方式使用旧定义..
我试过 运行 daemon-reload
但没有效果。
当我尝试 运行
sudo systemctl reload docker-log 14469ms
Failed to reload docker-log.service: Job type reload is not applicable for unit docker-log.service.
See system logs and 'systemctl status docker-log.service' for details.
也没有任何作用..
我想你错过了 ExecReload
。
[Unit]
Description=Docker Compose Application Service [monitor]
Requires=docker.service
After=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
WorkingDirectory=/home/eugenekim/Documents/monitor/node-master
ExecStart=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
# docker compose will watch for changes
ExecReload=/usr/local/bin/docker-compose -f docker-compose.log.yml up -d es-log-00
# or you want a force restart
#ExecReload=/usr/local/bin/docker-compose -f docker-compose.log.yml restart es-log-00
ExecStop=/usr/local/bin/docker-compose -f docker-compose.log.yml down
TimeoutStartSec=0
[Install]
WantedBy=multi-user.target