Created
September 30, 2017 10:19
-
-
Save phjardas/24ab66dcb7a2c59ca3d9e8464f4e3941 to your computer and use it in GitHub Desktop.
This script will create a portainer configuration for a set of docker machines. The output will be a series of docker commands that you can simply execute against a manager node of your swarm.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash -e | |
# This script will create a portainer configuration for a set of docker machines. | |
# The output will be a series of docker commands that you can simply execute against a manager node of your swarm. | |
# | |
# Usage: docker-machine-portainer.config.sh machine-0 machine-1 machine-2 | |
secrets="" | |
for machine in "$@"; do | |
eval $(docker-machine env $machine) | |
echo "docker secret create docker.${machine}.tls.cacert $DOCKER_CERT_PATH/ca.pem" | |
echo "docker secret create docker.${machine}.tls.cert $DOCKER_CERT_PATH/cert.pem" | |
echo "docker secret create docker.${machine}.tls.key $DOCKER_CERT_PATH/key.pem" | |
echo | |
secrets="$secrets --secret docker.${machine}.tls.cacert --secret docker.${machine}.tls.cert --secret docker.${machine}.tls.key" | |
[ ! -z "$cfg" ] && cfg="$cfg," | |
cfg="$cfg{\"Name\":\"$machine\",\"URL\":\"$DOCKER_HOST\",\"TLS\":true,\"TLSSkipVerify\":false,\"TLSCACert\":\"/run/secrets/docker.${machine}.tls.cacert\",\"TLSCert\":\"/run/secrets/docker.${machine}.tls.cert\",\"TLSKey\":\"/run/secrets/docker.${machine}.tls.key\"}" | |
done | |
echo "echo '[$cfg]' | docker secret create portainer.config -" | |
echo | |
echo "docker service create --detach=false --name portainer --secret portainer.config $secrets --publish 9000:9000 portainer/portainer --no-auth --no-analytics --external-endpoints /run/secrets/portainer.config" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment