diff --git a/prepare-vms/settings/swarm.yaml b/prepare-vms/settings/swarm.yaml index 55636ae0..c60d8566 100644 --- a/prepare-vms/settings/swarm.yaml +++ b/prepare-vms/settings/swarm.yaml @@ -20,8 +20,8 @@ paper_margin: 0.2in engine_version: stable # These correspond to the version numbers visible on their respective GitHub release pages -compose_version: 1.21.1 -machine_version: 0.14.0 +compose_version: 1.22.0 +machine_version: 0.15.0 # Password used to connect with the "docker user" -docker_user_password: training \ No newline at end of file +docker_user_password: training diff --git a/slides/swarm-fullday.yml b/slides/swarm-fullday.yml index 7627bd08..9a558279 100644 --- a/slides/swarm-fullday.yml +++ b/slides/swarm-fullday.yml @@ -55,6 +55,7 @@ chapters: - swarm/apiscope.md - - swarm/logging.md - swarm/metrics.md + - swarm/gui.md - swarm/stateful.md - swarm/extratips.md - shared/thankyou.md diff --git a/slides/swarm/gui.md b/slides/swarm/gui.md new file mode 100644 index 00000000..05796ba6 --- /dev/null +++ b/slides/swarm/gui.md @@ -0,0 +1,51 @@ +# GUI's: Web Admin of Swarms and Registry + +What about web interfaces to control and manage Swarm? + +- [Docker Enterprise](https://www.docker.com/products/docker-enterprise) is Docker Inc's paid offering, which has GUI's. + +- [Portainer](https://portainer.io) is a popular open source web GUI for Swarm with node agents. + +- [Portus](http://port.us.org) is a SUSE-backed open source web GUI for registry. + +- Find lots of other Swarm tools in the [Awesome Docker list](http://awesome-docker.netlify.com). + +--- + +## Lets deploy Portainer + +- Yet another stack file + +.exercise[ + +- Make sure we are in the stacks directory: + ```bash + cd ~/container.training/stacks + ``` + +- Deploy the Portainer stack: + ```bash + docker stack deploy -c portainer.yml portainer + ``` + +] + +--- + +## View and setup Portainer + +- go to `:9090` + +- You should see the setup UI. Create a 8-digit password. + +- Next, tell Portainer how to connect to docker. + +- We'll use the agent method (one per node). + + - For connection, choose `Agent` + + - Name: `swarm1` + + - Agent URL: `tasks.agent:9001` + +- Let's browse around the interface diff --git a/slides/swarm/versions.md b/slides/swarm/versions.md index b5eb5bbe..8b6603ef 100644 --- a/slides/swarm/versions.md +++ b/slides/swarm/versions.md @@ -1,8 +1,8 @@ ## Brand new versions! -- Engine 18.03 -- Compose 1.21 -- Machine 0.14 +- Engine 18.06 +- Compose 1.22 +- Machine 0.15 .exercise[ diff --git a/stacks/portainer.yml b/stacks/portainer.yml new file mode 100644 index 00000000..55e39738 --- /dev/null +++ b/stacks/portainer.yml @@ -0,0 +1,15 @@ +version: "3.4" + +services: + web: + image: portainer/portainer + ports: + - "9000:9000" + agent: + image: portainer/agent + volumes: + - /var/run/docker.sock:/var/run/docker.sock + deploy: + mode: global + environment: + AGENT_CLUSTER_ADDR: tasks.agent