Swarm¶
Discovery¶
node discovery¶
docker run -d -p 2376:2375 swarm manage --discovery dockerhost01:2375,docker02:2375:docker03:2375 \
-H=0.0.0.0:2375
file discovery¶
docker run -d -p 2376:2375 -v /etc/swarm/cluster_config:/cluster \
swarm manage file:///cluster
# cat /etc/swarm/cluster_config
dockerhost01:2375
dockerhost02:2375
dockerhost03:2375
docker hub token¶
#docker run --rm swarm create
e9a6015cd02bfddb03ef95848b490450
docker run --rm swarm --addr=10.13.181.85:2375 token://e9a6015cd02bfddb03ef95848b490450
docker run -d -p 2376:2375 swarm manage token://e9a6015cd02bfddb03ef95848b490450
Schedule¶
spread¶
docker run -d -p 2376:2375 -v /etc/swarm/cluster_config:/cluster \
swarm manage --strategy=spread file:///cluster
binpack¶
docker run -d -p 2376:2375 -v /etc/swarm/cluster_config:/cluster \
swarm manage --strategy=binpack file:///cluster
random¶
docker run -d -p 2376:2375 -v /etc/swarm/cluster_config:/cluster \
swarm manage --strategy=random file:///cluster
Filter¶
TLS support¶
Create TLS Certificates for Docker and Docker Swarm
Docker:
docker -d \
--tlsverify \
--tlscacert=/etc/pki/tls/certs/ca.pem \
--tlscert=/etc/pki/tls/certs/dockerhost01-cert.pem \
--tlskey-/etc/pki/tls/private/dockerhost01-key.pem \
-H tcp://0.0.0.0:2376
Swarm master:
swarm manage \
--tlsverify \
--tlscacert=/etc/pki/tls/certs/ca.pem \
--tlscert=/etc/pki/tls/certs/swarm-cert.pem \
--tlskey=/etc/pki/tls/private/swarm-key.pem \
--discovery file://etc/swarm_config \
-H tcp://0.0.0.0:2376
Settings on client:
export DOCKER_HOST=tcp://dockerswarm01:2376
export DOCKER_CERT_PATH="`pwd`"
export DOCKER_TLS_VERIFY=1