docker-stack-deploy
swarmsible
Our great sponsors
docker-stack-deploy | swarmsible | |
---|---|---|
6 | 11 | |
29 | 55 | |
- | - | |
5.2 | 5.6 | |
2 months ago | 12 days ago | |
Python | Shell | |
MIT License | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
docker-stack-deploy
- Can any Hetzner user, please explain there workflow on Hetzner?
-
For Swarm mode users: What features do you miss/need from Kubernetes ecosystem?
Also, it would be nice if docker secrets/configs would have a simpler rotation story. We work around this by appending the file hash to the secret/config name though: https://github.com/neuroforgede/docker-stack-deploy
-
Looking to containerize a large production scale nodejs app
Yeah, but it seems dozens of users is not enough to really keep Docker Swarm up-to-date. privileged not working in Swarm (issue #1030 from 2016, again pull request #3072 from 2022), configs and secrets not update-able (workaround) and not write-able within container, I find that really annoying.
- Automatically rotate Docker Swarm secrets with Docker-sdp
- Auto-rotate Docker Swarm secrets and configs with docker-stack-deploy (docker-sdp)
- Docker-stack-deploy – Usability Wrapper around Docker stack deploy
swarmsible
-
Can any Hetzner user, please explain there workflow on Hetzner?
We use Docker Swarm for our deployments, so I will answer the questions based on that.
We have built some tooling around setting up and maintaining the swarm using ansible [0]. We also added some Hetzner flavour to that [1] which allows us to automatically spin up completely new clusters in a really short amount of time.
deploy from source repo:
- We use Azure DevOps pipelines that automate deployments based on environment configs living in an encrypted state in Git repos. We use [2] and [3] to make it easier to organize the deployments using `docker stack deploy` under the hood.
keep software up to date:
- We are currently looking into CVE scanners that export into prometheus to give us an idea of what we should update
load balancing:
- depending on the project, Hetzner LB or Cloudflare
handle scaling:
- manually, but i would love to build some autoscaler for swarm that interacts with our tooling [0] and [1]
automate backups:
- docker swarm cronjobs either via jobs with restart condition and a delay or [4]
maintain security:
- Hetzner LB is front facing. Communication is done via encrypted networks inside Hetzner private cloud networks
- [0] https://github.com/neuroforgede/swarmsible
- For Swarm mode users: What features do you miss/need from Kubernetes ecosystem?
-
How do you deploy your side-projects?
Pretty much the same as our goto for projects at work: Hetzner + Docker (Swarm) with some Ansible to orchestrate things
We have built some automation around cluster management over at https://github.com/neuroforgede/swarmsible.
I used to do everything in ansible, but Docker Stacks are just so much nicer to use.
In any case automation is king. I don't have to remember stuff if I can just look at some IaC Code :).
-
Docker Swarm with compose
Our tooling can be found here https://github.com/neuroforgede/swarmsible . It is not yet documented tbh, but most things are pretty straight forward to use if you have used ansible, docker etc already.
-
Ask HN: Have You Left Kubernetes?
Story of one of the projects I am involved in:
We came from Ansible managed deployments of vanilla docker with nginx as single node ingress with another load balancer on top of that.
Worked fine, but HA for containers that are only allowed to exist once in the stack was one thing that caused us headaches.
Then, we had a workshop for Rancher RKE. Looked promising at the start, but operating it became a headache as we didn't have enough people in the project team to maintain it. Certificates expiring was an issue and the fact that you actually kinda had to baby-sit the cluster was a turn off.
We killed the switch to kubernetes.
In the meantime we were toying around with Docker Swarm for smaller scale deployments and inhouse infrastructure. We didn't find anything to not like and are currently moving into that direction.
How we do things in Swarm:
1. Monitoring using an updated Swarmprom stack (https://github.com/neuroforgede/swarmsible/tree/master/envir...)
- Container / host monitoring strategy?
- I ported swarmprom to all new docker image versions - It still works just fine!
-
An updated Docker Swarm Monitoring Stack based on the original Swarmprom
For anyone interested in this, check out: https://github.com/neuroforgede/swarmsible/blob/master/environments/test/test-swarm/stacks/02_monitoring/README.md
- Show HN: I ported swarmprom to all new image versions
- Show HN: Swarmsible – Ansible Playbooks to Setup (and Manage) a Docker Swarm
What are some alternatives?
woodpecker - Woodpecker is a simple yet powerful CI/CD engine with great extensibility.
swarmsible-hetzner - Companion repository for https://github.com/neuroforgede/swarmsible with a focus on usage in the Hetzner cloud
docker-stack-wait - Wait for a docker stack deploy to complete
nydus - Nydus - the Dragonfly image service, providing fast, secure and easy access to container images.
mlToolKits - learningOrchestra is a distributed Machine Learning integration tool that facilitates and streamlines iterative processes in a Data Science project.
terraform-hcloud-kube-hetzne
ssh-script-dashboard - An interface for executing scripts locally, or remotely over SSH
Netdata - The open-source observability platform everyone needs
nothelm-charts - nothelm.py charts (projects) for Docker Swarm
k8s-config-connector - GCP Config Connector, a Kubernetes add-on for managing GCP resources
podlike - Co-located containers as Docker Swarm services (like Kubernetes pods)
nothelm.py - nothelm.py - opinionated docker stack project tool with templating support