#cloud-config write_files: - path: /etc/kontena-agent.env permissions: 0600 owner: root content: | KONTENA_URI="<%= master_uri %>" KONTENA_TOKEN="<%= grid_token %>" KONTENA_PEER_INTERFACE=eth1 KONTENA_VERSION=<%= version %> - path: /etc/systemd/system/docker.service.d/50-kontena.conf content: | [Service] Environment='DOCKER_OPTS=--insecure-registry="10.81.0.0/16" --bip="172.17.43.1/16"' Environment='DOCKER_CGROUPS=--exec-opt native.cgroupdriver=cgroupfs' - path: /etc/sysctl.d/99-inotify.conf owner: root permissions: 0644 content: | fs.inotify.max_user_instances = 8192 - path: /etc/resolv.conf permissions: 0644 owner: root content: | nameserver 172.17.43.1 nameserver 8.8.8.8 nameserver 8.8.4.4 coreos: units: - name: etcd2.service command: start enable: true content: | Description=etcd 2.0 After=docker.service [Service] Restart=always RestartSec=5 ExecStart=/usr/bin/docker logs --tail=10 -f kontena-etcd - name: 50-docker.network mask: true - name: 50-docker-veth.network mask: true - name: zz-default.network runtime: false content: | # default should only match real network interfaces [Match] Name=eth* [Network] DHCP=yes [DHCP] UseMTU=true UseDomains=true - name: kontena-agent.service command: start enable: true content: | [Unit] Description=kontena-agent After=network-online.target After=docker.service Description=Kontena Agent Documentation=http://www.kontena.io/ Requires=network-online.target Requires=docker.service [Service] Restart=always RestartSec=5 EnvironmentFile=/etc/kontena-agent.env ExecStartPre=-/usr/bin/docker stop kontena-agent ExecStartPre=-/usr/bin/docker rm kontena-agent ExecStartPre=/usr/bin/docker pull kontena/agent:${KONTENA_VERSION} ExecStart=/usr/bin/docker run --name kontena-agent \ -e KONTENA_URI=${KONTENA_URI} \ -e KONTENA_TOKEN=${KONTENA_TOKEN} \ -e KONTENA_PEER_INTERFACE=${KONTENA_PEER_INTERFACE} \ -v=/var/run/docker.sock:/var/run/docker.sock \ -v=/etc/kontena-agent.env:/etc/kontena.env \ --net=host \ kontena/agent:${KONTENA_VERSION}