这是在运行Docker的Ubuntu 14.04 LTS VM上,我怀疑respawn
是造成问题的原因,但不确定理想的解决方案。
当前的新贵脚本(cat /etc/init/dockersuitecrm.conf
)
description "Start docker containers"
author "Batman"
start on filesystem and started docker
stop on runlevel [!2345]
respawn
script
docker-compose -f /usr/bin/myapp/docker-compose.yml -p myapp start
end script
这种“有效”的方式myapp
是活跃且响应迅速的,但是/sbin/init
当我使用进行监视时,它会占用所有CPU htop
。如果我从upstart(sudo rm /etc/init/dockersuitecrm.conf
)中删除该条目并手动进行SSH并运行,docker-compose -f /usr/bin/myapp/docker-compose.yml -p myapp start
我看不到CPU出现100%问题,并且像以前一样myapp
仍然活跃且响应迅速。
所以我怀疑我上面启动docker-compose的方式是不正确的。什么是正确的开始方式,docker-compose
始终在没有人工干预的情况下运行?
编辑:没关系,但/usr/bin/myapp -> /home/batman/dockerapps/myapp
作为符号链接。
docker-compose start
。
script
块。也许这是问题的一部分?我有chdir /usr/bin/myapp/
和在下一行exec docker-compose up
。
docker-compose up -d
respawn
在脚本中没有命令的情况下运行它。