据我所知,Docker Swarm API与Offical Docker API兼容。
以下docker命令的等效Docker Swarm命令是什么:
docker ps -a
docker run --net=host --privileged=true \
-e DEVICE=$VETH_NAME -e SWARM_MANAGER_ADDR=$SWARM_MANAGER_ADDR -e SWARM_MANAGER_PORT=$SWARM_MANAGER_PORT \
-v conf_files:/etc/sur \
-v conf_files:/etc/sur/rules \
-v _log:/var/log/sur\
-d sur
答案 0 :(得分:1)
独立群只有一个不同的主机/端口供您与客户端连接(客户端是docker
cli)。它将命令中的命令从管理器中继到群中的每个节点。最简单的方法是将$DOCKER_HOST
设置为指向经理正在收听的端口:
# start your manager, the end of the command is your discovery method
docker run -d -P --restart=always --name swarm-manager swarm manager ...
# send all future commands to the manager
export DOCKER_HOST=$(docker port swarm-manager 2375)
# run any docker ps, docker run, etc commands on the Swarm
docker ps
docker run --net=host --privileged=true \
-e DEVICE=$VETH_NAME \
-e SWARM_MANAGER_ADDR=$SWARM_MANAGER_ADDR \
-e SWARM_MANAGER_PORT=$SWARM_MANAGER_PORT \
-v conf_files:/etc/sur \
-v conf_files:/etc/sur/rules \
-v _log:/var/log/sur \
-d sur
# return to running commands on the local docker host
unset DOCKER_HOST
如果您需要定义那些SWARM_MANAGER_ADDR / PORT值,那么这些值可以来自docker port
命令。否则,我不熟悉“sur”图像,以了解你需要传递的值。