grdnr
2/19/2018 - 11:23 AM

Swarm token joining

Swarm token joining

## Manager
provisioner "remote-exec" {
    inline = [
      "echo '10.0.10.100 ucp.local' | sudo tee --append /etc/hosts",
      "echo '10.0.10.200 dtr.local' | sudo tee --append /etc/hosts",
      "sudo cat /home/ubuntu/key.pub > ~/.ssh/authorized_keys",
      "cd /tmp",
      "wget ${var.ee_url}",
      "sudo dpkg -i docker*",
      "sudo apt-get update && sudo apt-get -f install -y",
      "sudo docker swarm init --advertise-addr ${azurerm_public_ip.ucp_pip.ip_address}",
      "sudo docker swarm join-token --quiet worker > /home/ubuntu/token",
      "sleep 20",
      "sudo docker run --rm --name ucp -v /var/run/docker.sock:/var/run/docker.sock docker/ucp install --admin-username \"${var.ucp-admin_username}\" --admin-password \"${var.ucp-admin_password}\" --san ucp.local --license $(cat /home/ubuntu/docker_subscription.lic)"
    ]
  }

## Worker
  provisioner "remote-exec" {
    inline = [
      "echo '10.0.10.100 ucp.local' | sudo tee --append /etc/hosts",
      "echo '10.0.10.200 dtr.local' | sudo tee --append /etc/hosts",
      "cd /tmp",
      "wget ${var.ee_url}",
      "sudo dpkg -i docker*",
      "sudo apt-get update && sudo apt-get -f install -y",
      "sudo chmod 400 /home/ubuntu/key",
      "sudo scp -o StrictHostKeyChecking=no -o NoHostAuthenticationForLocalhost=yes -o UserKnownHostsFile=/dev/null -i /home/ubuntu/key ubuntu@${azurerm_public_ip.ucp_pip.ip_address}:/home/ubuntu/token /home/ubuntu/token",
      "sudo docker swarm join --token $(cat /home/ubuntu/token) ${azurerm_public_ip.ucp_pip.ip_address}:2377",
      "sleep 30",
      "sudo docker run --rm docker/dtr install --ucp-url https://${azurerm_public_ip.ucp_pip.ip_address} --ucp-node dtr --dtr-external-url https://dtr.local --ucp-username \"${var.ucp-admin_username}\" --ucp-password \"${var.ucp-admin_password}\" --ucp-insecure-tls",
      "sudo sh -c 'curl -k https://${azurerm_public_ip.dtr_pip.ip_address}/ca -o /usr/local/share/ca-certificates/dtr.local.crt'",
      "sudo update-ca-certificates",
      "sudo systemctl restart docker"
    ]
  }