在 GCE 上运行 COS
关于如何让 COS 优雅地关闭 docker 有什么想法吗?
我最里面的进程是 celery,它说他想要一个 SIGTERM 优雅地停止
http://docs.celeryproject.org/en/latest/userguide/workers.html#stopping-the-worker
我的入口点类似于
exec celery -A some_app worker -c some_concurrency
在 COS 上,我正在运行我的 docker 服务,例如
write_files:
- path: /etc/systemd/system/servicename.service
permissions: 0644
owner: root
content: |
[Unit]
Description=Some service
[Service]
Environment="HOME=/home/some_home"
RestartSec=10
Restart=always
ExecStartPre=/usr/share/google/dockercfg_update.sh
ExecStart=/usr/bin/docker run -u 2000 --name=somename --restart always some_image param_1 param_2
ExecStopPost=/usr/bin/docker stop servicename
KillMode=processes
KillSignal=SIGTERM
但最终,当我的 COS 实例关闭时,它只是拔掉了插头。
我需要添加关闭脚本来执行 docker stop 吗?我需要做一些更高级的事情吗?