{"id":21540059,"url":"https://github.com/fsoppelsa/salt-playground","last_synced_at":"2026-05-03T23:33:17.379Z","repository":{"id":145867323,"uuid":"70142848","full_name":"fsoppelsa/salt-playground","owner":"fsoppelsa","description":"Instant multihost Salt environment fired up with Compose","archived":false,"fork":false,"pushed_at":"2017-05-10T12:28:57.000Z","size":11,"stargazers_count":3,"open_issues_count":0,"forks_count":1,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-03-17T21:51:46.116Z","etag":null,"topics":["docker","docker-compose","salt-master"],"latest_commit_sha":null,"homepage":null,"language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fsoppelsa.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":"2016-10-06T10:08:28.000Z","updated_at":"2018-11-29T12:54:28.000Z","dependencies_parsed_at":null,"dependency_job_id":"883ad0f8-bfc6-40ab-bdf0-f5486983e72f","html_url":"https://github.com/fsoppelsa/salt-playground","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/fsoppelsa/salt-playground","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fsoppelsa%2Fsalt-playground","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fsoppelsa%2Fsalt-playground/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fsoppelsa%2Fsalt-playground/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fsoppelsa%2Fsalt-playground/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fsoppelsa","download_url":"https://codeload.github.com/fsoppelsa/salt-playground/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fsoppelsa%2Fsalt-playground/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":271442140,"owners_count":24760353,"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","status":"online","status_checked_at":"2025-08-21T02:00:08.990Z","response_time":74,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":["docker","docker-compose","salt-master"],"created_at":"2024-11-24T04:17:16.256Z","updated_at":"2026-05-03T23:33:12.361Z","avatar_url":"https://github.com/fsoppelsa.png","language":"Shell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# salt-playground\nInstant multihost Salt environment fired up with Compose\n\n# Requirements\n* A Docker host, either local or remote\n  * [Mac users](https://docs.docker.com/docker-for-mac/)\n  * [Linux users](https://docs.docker.com/engine/installation/linux/ubuntulinux/)\n  * [Docker Machine](https://docs.docker.com/machine/install-machine/)\n* Docker Compose:\n  * Mac users: `brew install docker-compose`\n  * Universal:\n\n```\ncurl -L https://github.com/docker/compose/releases/download/1.8.0/docker-compose-`uname -s`-`uname -m` \\\n\u003e /usr/local/bin/docker-compose\n```\n\n# Usage\n1. `cd salt-playground`\n2. `docker-compose -f demo.yml up --build --remove-orphans --force-recreate -d`\n3. Wait and have a coffee ☕️\n\n```\n$ docker ps\nCONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                              NAMES\nd701748ad010        saltplayground_master         \"/root/start.sh 6\"       3 seconds ago       Up 1 seconds        0.0.0.0:4505-4506-\u003e4505-4506/tcp   salt-master\n86c4952225b9        saltplayground_controller03   \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           controller03\n0dc145d30062        saltplayground_web01          \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           web01\ne919680db69b        saltplayground_controller01   \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           controller01\n03b4df88e265        saltplayground_compute02      \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           compute02\n3bdddea4d118        saltplayground_compute01      \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           compute01\nff8cc3bf89f4        saltplayground_controller02   \"/root/wait-for-minio\"   7 seconds ago       Up 3 seconds                                           controller02\n```\n\nThen attach to the master with bash:\n\n```\n$ docker exec -ti salt-master bash\nroot@salt-master:/# salt-key -F\nLocal Keys:\nmaster.pem:  65:07:a1:a1:de:3c:44:59:c8:7a:15:f3:43:c0:4c:1c:90:b3:87:14:bb:c0:18:9c:c1:7b:b1:57:f4:87:cc:7e\nmaster.pub:  6b:02:4c:44:c9:a6:c1:a1:83:86:a7:cc:32:9d:2a:54:ef:02:8e:c3:1d:8c:41:30:54:cb:43:ce:f6:6a:01:d5\nAccepted Keys:\ncmp01:  d1:0f:f4:19:a0:ad:34:99:67:fd:1a:0d:54:da:9f:84:d6:18:55:b8:13:3b:04:51:6c:ff:39:5f:07:d6:74:30\ncmp02:  a2:7e:1c:c2:50:70:71:61:66:31:0b:c4:e0:6c:9b:d1:55:fa:f6:16:00:7f:33:31:ad:14:6f:31:61:6d:15:97\nctl01:  14:95:7b:1f:68:54:6e:a0:c7:75:b8:9e:b6:e8:64:2a:da:f8:c3:7a:a8:b3:38:5f:73:be:be:ec:d7:6f:4d:f6\nctl02:  31:40:6e:b3:65:52:a4:e2:b1:7e:e6:bf:8e:f6:1f:08:1b:cd:77:81:13:15:69:16:e5:6a:a8:f2:6c:45:9c:d4\nctl03:  a4:0b:be:72:0b:14:d5:9a:ac:81:4a:9f:69:5f:0a:93:dc:8c:44:ee:b6:8d:65:05:33:47:2e:99:01:f2:fe:fd\nweb01:  19:2e:a8:8c:2e:8b:c2:e0:97:9d:25:cf:06:3b:de:0c:46:1b:68:c8:6a:4e:e8:12:38:72:df:1b:40:16:14:52\nroot@salt-master:/# salt '*' test.ping\nweb01:\n    True\ncmp01:\n    True\ncmp02:\n    True\nctl01:\n    True\nctl02:\n    True\nctl03:\n    True\n```\n\n# Notes\n* Internally, hosts resolve through their docker names, i.e. salt-master, controller01, compute01.\n* Environment configured both over IPv4 and IPv6\n* Images **fsoppelsa/saltmaster** and **fsoppelsa/saltminion** are pushed to the Hub, available to `docker pull`\n* **fsoppelsa/saltmaster** has autobuild activated on the Hub\n\nEnjoy 🍻\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffsoppelsa%2Fsalt-playground","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffsoppelsa%2Fsalt-playground","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffsoppelsa%2Fsalt-playground/lists"}