{"id":19806062,"url":"https://github.com/raitraidma/vagrant-ansible-docker-swarm","last_synced_at":"2026-04-10T02:09:53.176Z","repository":{"id":95020644,"uuid":"89086008","full_name":"raitraidma/vagrant-ansible-docker-swarm","owner":"raitraidma","description":"How to create Docker Swarm using Vagrant and Ansible","archived":false,"fork":false,"pushed_at":"2017-06-05T20:44:17.000Z","size":17,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-11T06:13:23.408Z","etag":null,"topics":["ansible","docker","swarm","vagrant"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/raitraidma.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-04-22T17:08:41.000Z","updated_at":"2017-05-23T20:12:41.000Z","dependencies_parsed_at":"2023-06-11T16:45:11.177Z","dependency_job_id":null,"html_url":"https://github.com/raitraidma/vagrant-ansible-docker-swarm","commit_stats":{"total_commits":11,"total_committers":2,"mean_commits":5.5,"dds":0.09090909090909094,"last_synced_commit":"8ef2f158d7a1d9538d1c8faeb1c47633aed317f7"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raitraidma%2Fvagrant-ansible-docker-swarm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raitraidma%2Fvagrant-ansible-docker-swarm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raitraidma%2Fvagrant-ansible-docker-swarm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/raitraidma%2Fvagrant-ansible-docker-swarm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/raitraidma","download_url":"https://codeload.github.com/raitraidma/vagrant-ansible-docker-swarm/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241150243,"owners_count":19918334,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ansible","docker","swarm","vagrant"],"created_at":"2024-11-12T09:06:20.138Z","updated_at":"2025-12-31T01:10:54.809Z","avatar_url":"https://github.com/raitraidma.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Vagrant Ansible Docker Swarm\n\nThis is an example, how to create Docker Swarm using Vagrant and Ansible.\n\nAnsible's VM is created, so you do not have to install Ansible in your host machine.\n\n`key.private` and `key.public` are used to enable Ansible to connect to other machines - you can generate you own key pair.\n\n## Prerequisites\n* [VirtualBox](https://www.virtualbox.org/)\n* `vagrant plugin install vagrant-vbguest`\n* [Vagrant](https://www.vagrantup.com/)\n\n## Create Docker Swarm\n\nCreate VMs:\n```sh\nvagrant up\n```\n\nThis command creates 4 machines:\n- `ansible` (provisioner)\n- `swarm-node-1` (manager)\n- `swarm-node-2` (worker)\n- `swarm-node-3` (worker)\n\nLogin to `ansible` virtual machine (172.16.66.10:22 or 127.0.0.1:2210 with username `vagrant` and password `vagrant`; or `vagrant ssh ansible`) and execute following commands:\n```sh\ncd /vagrant\n./setup.sh\n```\n\n## Management and monitoring\n\n### Monitoring Docker Swarm with Portainer, Visualizer, cAdvisor, Logspout, Logstash, Elasticsearch and Kibana\n\nI chose ELK stach because then I can store logs and timeseries in the same storage.\n\nLogin to `swarm-node-1` virtual machine (172.16.66.11:22 or 127.0.0.1:2211 with username `vagrant` and password `vagrant`; or `vagrant ssh swarm-node-1`) and execute following commands:\n```sh\ncd /vagrant\n./deploy.sh\n```\n\nRun `docker stack services monitoring` and verify if all services have all replicas up and running. If not, then wait and look again.\n\n#### Create dashboards in Kibana\nOpen http://127.0.0.1:5601 or http://172.16.66.11:5601\n\nGo to `Management` \u003e `Index Patterns` and add 2 patterns:\n- `swarm-container-stats-*`\n- `swarm-logs-*`\n\nGo to `Management` \u003e `Saved Objects` \u003e `Import` and select `monitoring-dashboard.json`\n\n### GUIs:\n- Portainer: http://127.0.0.1:9000\n- Visualizer: http://127.0.0.1:9001\n- Kibana: http://127.0.0.1:5601\n\n### Alternatives\n- [Monitoring Docker Swarm with cAdvisor, InfluxDB and Grafana](https://botleg.com/stories/monitoring-docker-swarm-with-cadvisor-influxdb-and-grafana/) ([Github](https://github.com/botleg/swarm-monitoring))","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraitraidma%2Fvagrant-ansible-docker-swarm","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fraitraidma%2Fvagrant-ansible-docker-swarm","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fraitraidma%2Fvagrant-ansible-docker-swarm/lists"}