我的计算机中有一个vagrant coreos群集设置。我可以提交,加载,启动,停止,卸载,销毁集群中不同主机的机群单位。是否有fleetctl命令用于暂停/恢复已加载/启动的单元?如果没有内置命令,如何实现车队单位的暂停/恢复功能?
答案 0 :(得分:1)
容器应该是无状态的,你应该以这种方式设计你的应用程序。
但是,如果您想暂停,则可以连接到运行设备的主机并使用docker pause
/ unpause
。
或者,如果您永远不想停止容器,请使用包装脚本以这种方式调整单元文件:
[Unit]
Description=blah
[Service]
ExecStart=<full path>/start.sh
ExecStop=<full path>/stop.sh
start.sh脚本:
#!/bin/bash
if [[ $(docker ps|grep <CONTAINER NAME/ID> == "" ]]; then
docker start <yourname>/<yourcontainer>
else
docker unpause <CONTAINER NAME/ID>
fi
stop.sh脚本:
#!/bin/bash
if [[ $(docker ps|grep <CONTAINER NAME/ID> == "" ]]; then
echo "container not running"
else
docker pause <CONTAINER NAME/ID>
fi
答案 1 :(得分:0)
今天在舰队中没有办法做到这一点。我的问题是,暂停/恢复与停止/启动或销毁/启动有什么不同?