almarklein/mypaas
almarklein/mypaas has 381 GitHub stars and 18 forks. GitHot measured 0 in 7 days and +1 in 15 days. Last checked 2026-11-11 02:28 UTC. Last push 2024-04-23.
Run your own PaaS using Docker, Traefik, and great analytics
实测星标增长
- 24小时
- 更新延迟
- 7天
- 0
- 15天
- +1
- 1个月
- 正在收集历史
各周期内的星标净变化,周期相互重叠,并非每日新增。缺失的测量保持空白。星标代表关注度,不代表软件质量。
README.md
原文

MyPaas
Run your own PaaS using Docker, Traefik, and great monitoring
MyPaas is a tool that makes it easy to run a platform as a service (PaaS) on your own VM or hardware. It combines Traefik and Docker, offers free automatic https, secure (zero-downtime) deployments via dockerfiles, and analytics.
You can setup your PaaS and make your first deployment in about 5 minutes.
Docker plus Traefik is awesome
Docker makes it possible to run multiple applications on a single server in a contained way.
Traefik is a modern router, reverse proxy, and load balancer that can be automatically configured using labels on Docker containers. It can also act as an https endpoint and automatically refreshes SSL/TLS certificates with Let's Encrypt.
MyPaas is a tool that helps you setup Traefik, and deploy Docker containers that have the right labels so that Traefik handles them in the right way. Plus it adds powerful analytics for all your apps. Website traffic is logged server-side, without cookies, respecting the end user's privacy.
I use MyPaas myself to serve e.g. https://pyzo.org and https://timetagger.app.
How it works
MyPaas is a command line interface (CLI) to setup and manage your PaaS server. You use the same CLI on your work machine to push deploys to the server. You configure your service/app by writing a Dockerfile and adding special mypaas-comments to it, and push that to the server via the CLI, where it is built and deployed. There is a web dashboard, but only for viewing status and analytics.
Setting expectations
Using MyPaas requires you to be familiar with a few basic backend development skills. There are plenty of online guides on each topic.
- You must be able to SSH into your server.
- You must know how to edit a file over SSH.
- You should probably know the basics of Docker.
- It may be useful to know the basic commands of systemctl
(actually,
systemctl status mypaasdmay be all you need).
Guide
Also see the example services.
License
BSD 2-clause.
What about serverless?
Serverless is nice and often very affordable, but you give up control and you often need additional services for analytics, databases, etc. MyPaas tries to make managing your server as easy as possible. You remain in control, and your only costs are that of the VM that the PaaS runs on.
Alternative projects to run your own PaaS
There are several tools similar to MyPaas. This is how (I think) they differ (let me know via an issue or PR if you can explain the differences better, or know of another alternative project.)
- Dokku uses Docker and Nginx. Apps
are configured at the server (rather than via the dockerfile as MyPaas does).
At the time that I tried it, getting Let's Encrypt to work was not trivial,
but this may have changed. Docku has no builtin analytics. Deploys
go via a
git push, as opposed to a a push command of a CLI tool (mypaas push). - CapRover uses Docker and Nginx, and has a nice web UI. This is also its weak spot IMO, because a username and password are all that's needed to give full access to your apps. MyPaas uses RSA keys and tokens that time out to provide high security.
- Swarmpit uses Docker Swarm and comes with monitoring. It's probably a bit more down to the metal. Not sure if it does Let's Encrypt?
- SwarmLet uses Traefik and Docker compose /
Docker swarm. This project is probably closest to MyPaas. It uses raw
labels for Traefik added in the compose file to configure an app.
MyPaas uses more high-level configuration in the Dockerfile. Swarmlet
uses git push to make a deploy as opposed to
mypaas push.
探索相关项目
Asabeneh/30-Days-Of-Python
30 Days of Python 编程挑战是一份循序渐进的指南,用于在 30 天内学习 Python 编程语言。这项挑战可能需要超过 100 天。请按自己的节奏进行。这些视频或许也有帮助:https://www.youtube.com/channel/UC7PNRuno1rzYPb1xLa4yktw
78,560 星标grafana/grafana
开放且可组合的可观测性与数据可视化平台。可对来自 Prometheus、Loki、Elasticsearch、InfluxDB、Postgres 等众多数据源的指标、日志和追踪进行可视化。
77,830 星标redis/redis
对于正在构建实时数据驱动应用的开发者而言,Redis 是首选、速度最快且功能最丰富的缓存、数据结构服务器和文档与向量查询引擎。
77,395 星标apache/superset
Apache Superset 是一个数据可视化与数据探索平台
75,473 星标