我有一项服务myservice
可以使用docker-compose
.我可以用 很好地启动和停止它systemctl
。但是,当系统关闭或重新启动时,它会挂起大约 2 分钟才能执行此操作。如果我systemctl
在尝试关闭/重新启动之前手动停止服务,则不会发生挂起。
不幸的是,由于系统的构建和配置方式(它是自定义嵌入式构建),让日志在重新启动后保持不变并非易事,因此我无法轻松检查启动时实际发生的情况。
我正在寻找有关关闭时停止的服务与systemctl stop myservice
.
这是服务文件:
[Unit]
Description=Myservice Description
After=network.target syslog.target docker.service
Requires=docker.service
RequiresMountsFor=/mnt/data/where_docker_volumes_live
[Service]
Type=simple
ExecStartPre=/opt/some_prep_script.sh
ExecStart=/usr/bin/docker-compose --project-directory /opt/mycontainers up --force-recreate
ExecStop=/usr/bin/docker-compose --project-directory /opt/mycontainers down
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target