diff --git a/magnum/drivers/common/templates/swarm/fragments/add-docker-daemon-options.sh b/magnum/drivers/common/templates/swarm/fragments/add-docker-daemon-options.sh new file mode 100644 index 0000000000..b08eb3132d --- /dev/null +++ b/magnum/drivers/common/templates/swarm/fragments/add-docker-daemon-options.sh @@ -0,0 +1,13 @@ +#!/bin/sh + +. /etc/sysconfig/heat-params + +opts="-H fd:// -H tcp://0.0.0.0:2375 " + +if [ "$TLS_DISABLED" = 'False' ]; then + opts=$opts"--tlsverify --tlscacert=/etc/docker/ca.crt " + opts=$opts"--tlskey=/etc/docker/server.key " + opts=$opts"--tlscert=/etc/docker/server.crt " +fi + +sed -i '/^OPTIONS=/ s#\(OPTIONS='"'"'\)#\1'"$opts"'#' /etc/sysconfig/docker diff --git a/magnum/drivers/common/templates/swarm/fragments/write-docker-service.sh b/magnum/drivers/common/templates/swarm/fragments/write-docker-service.sh deleted file mode 100644 index 14e79e802c..0000000000 --- a/magnum/drivers/common/templates/swarm/fragments/write-docker-service.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/bin/sh - -. /etc/sysconfig/heat-params - -mkdir -p /etc/systemd/system/docker.service.d - -cat > /etc/systemd/system/docker.service << END_SERVICE_TOP -[Unit] -Description=Docker Application Container Engine -Documentation=http://docs.docker.com -After=network.target docker.socket -Requires=docker.socket -Wants=docker-storage-setup.service - -[Service] -TimeoutStartSec=300 -Type=notify -EnvironmentFile=-/etc/sysconfig/docker -EnvironmentFile=-/etc/sysconfig/docker-storage -EnvironmentFile=-/etc/sysconfig/docker-network -Environment=GOTRACEBACK=crash -ExecStart=/usr/bin/docker daemon -H fd:// \\ - -H tcp://0.0.0.0:2375 \\ -END_SERVICE_TOP - -if [ "$TLS_DISABLED" = 'False' ]; then - -cat >> /etc/systemd/system/docker.service << END_TLS - --tlsverify \\ - --tlscacert="/etc/docker/ca.crt" \\ - --tlskey="/etc/docker/server.key" \\ - --tlscert="/etc/docker/server.crt" \\ -END_TLS - -fi - -cat >> /etc/systemd/system/docker.service << END_SERVICE_BOTTOM - \$OPTIONS \\ - \$DOCKER_STORAGE_OPTIONS \\ - \$DOCKER_NETWORK_OPTIONS \\ - \$INSECURE_REGISTRY -LimitNOFILE=1048576 -LimitNPROC=1048576 -LimitCORE=infinity -MountFlags=slave - -[Install] -WantedBy=multi-user.target -END_SERVICE_BOTTOM - -chown root:root /etc/systemd/system/docker.service -chmod 644 /etc/systemd/system/docker.service diff --git a/magnum/drivers/common/templates/swarm/fragments/write-docker-socket.yaml b/magnum/drivers/common/templates/swarm/fragments/write-docker-socket.yaml index 59cf0991cd..4c1b9fcd0c 100644 --- a/magnum/drivers/common/templates/swarm/fragments/write-docker-socket.yaml +++ b/magnum/drivers/common/templates/swarm/fragments/write-docker-socket.yaml @@ -9,6 +9,7 @@ write_files: Description=Docker Socket for the API PartOf=docker.service After=docker-storage-setup.service + Before=docker.service [Socket] ListenStream=/var/run/docker.sock diff --git a/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmmaster.yaml b/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmmaster.yaml index da95c53532..e67445ce27 100644 --- a/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmmaster.yaml +++ b/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmmaster.yaml @@ -282,11 +282,11 @@ resources: group: ungrouped config: {get_file: ../../common/templates/swarm/fragments/make-cert.py} - write_docker_service: + add_docker_daemon_options: type: "OS::Heat::SoftwareConfig" properties: group: ungrouped - config: {get_file: ../../common/templates/swarm/fragments/write-docker-service.sh} + config: {get_file: ../../common/templates/swarm/fragments/add-docker-daemon-options.sh} write_swarm_manager_failure_service: type: "OS::Heat::SoftwareConfig" @@ -373,7 +373,7 @@ resources: - config: {get_resource: network_service} - config: {get_resource: configure_docker_storage} - config: {get_resource: write_swarm_manager_failure_service} - - config: {get_resource: write_docker_service} + - config: {get_resource: add_docker_daemon_options} - config: {get_resource: write_docker_socket} - config: {get_resource: write_swarm_master_service} - config: {get_resource: add_proxy} diff --git a/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmnode.yaml b/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmnode.yaml index 50762c9a7e..9feae81535 100644 --- a/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmnode.yaml +++ b/magnum/drivers/swarm_fedora_atomic_v1/templates/swarmnode.yaml @@ -246,11 +246,11 @@ resources: group: ungrouped config: {get_file: ../../common/templates/fragments/configure-docker-registry.sh} - write_docker_service: + add_docker_daemon_options: type: "OS::Heat::SoftwareConfig" properties: group: ungrouped - config: {get_file: ../../common/templates/swarm/fragments/write-docker-service.sh} + config: {get_file: ../../common/templates/swarm/fragments/add-docker-daemon-options.sh} write_docker_socket: type: "OS::Heat::SoftwareConfig" @@ -335,7 +335,7 @@ resources: - config: {get_resource: configure_docker_registry} - config: {get_resource: write_swarm_agent_failure_service} - config: {get_resource: write_swarm_agent_service} - - config: {get_resource: write_docker_service} + - config: {get_resource: add_docker_daemon_options} - config: {get_resource: write_docker_socket} - config: {get_resource: add_proxy} - config: {get_resource: enable_docker_registry}