docker-compose
based framework for building production-like environments - developing and testing on your local computer, deploying to your server or cluster from shell or from CI.
Demo: https://asciinema.org/a/348698
This project will be in the future replaced by "Space Harbor", which is successor of Harbor. Why? We started Harbor project as lightweight and elastic replacement for Kubernetes usage in tiny scale (for smaller services like blogs, forums etc.) but recently we researched usage of a lightweight Kubernetes distribution which fits very well for tiny scale and does not require an extra development of Python code.
We will support bugfixes fixes to Harbor till 01.01.2023, please consider migration to https://github.com/riotkit-org/k3s-space-harbor as soon as it will be announced stable.
Features:
- Service discovery (pins containers into WWW domains by labelling)
- Deployment strategies: compose's standard, recreation, and rolling-updates (zero-downtime updates)
- Automatic Letsencrypt SSL
- Standardized directory structures and design patterns
- Ready to use snippets of code and solutions (one command to install database, Wordpress or other application from our repository)
- Ansible integration to prepare your production/testing server and deploy updates in extremely intuitive way
Roadmap:
Harbor 2.1
- Init containers support (basing on Kubernetes idea) (#5)
- delayed-request update strategy (minimum-downtime deployment with holding all HTTP requests waiting for new application) (#11)
- Webhook handling update daemon to trigger container and git updates (#10)
Read documentation for more: https://environment.docs.riotkit.org/en/latest/?badge=latest
- Service upgrade strategies: Compose-native, recreation, rolling-updates
- Rewrite from Makefile to Python
- Containers startup priority
- Maintenance mode is now not only global, but also per domain
- Development mode now supports not only .localhost domains, but also *.xip.io
We are grassroot activists for social change, so we created this software while we were helping those fantastic initiatives:
- RiotKit (https://riotkit.org)
- International Workers Association (https://iwa-ait.org)
- Anarchistyczne FAQ (http://anarchizm.info) a translation of Anarchist FAQ (https://theanarchistlibrary.org/library/the-anarchist-faq-editorial-collective-an-anarchist-faq)
- Federacja Anarchistyczna (http://federacja-anarchistyczna.pl)
- Związek Syndykalistów Polski (https://zsp.net.pl) (Polish section of IWA-AIT)
- Komitet Obrony Praw Lokatorów (https://lokatorzy.info.pl)
- Solidarity Federation (https://solfed.org.uk)
- Priama Akcia (https://priamaakcia.sk)
Special thanks to Working Class History for very powerful samples that we could use in our unit tests.