14 comments

[ 3.3 ms ] story [ 46.0 ms ] thread
Some suggestions/questions for the readmes:

- It would be nice to have some screenshots in the status/analytics sections.

- Does this use docker hub or does it push the raw docker image to the server or does it build on the server?

- How can we deploy docker hub images (for cases where the image is built by CI or using a cache or something)?

- It might be a good example to link to the examples directory from the readme. I almost suggested some examples, but then turned off my extension that hides the files on the repo homepage. :)

Thanks, I will update the readme to include more info.

To answer some: It pushes a zipped directory to the server, which includes a Dockerfile. There, the server builds the image and deploys it.

Deploying pre-build images is probably best done by using a Dockerfile that uses FROM to point to the pre-build image.

this looks quite interesting, but if I have my system defined in a docker-compose file which is effectively multiple containers, will this support that?
Do you know of any tools that do this?
docker swarm and kubenetes springs to mind, with the latter an overkill for a solo/developer...
No, at the moment it does not support Docker-compose.
If you are looking for something that is a little more turn-key than this I highly recommend CapRover [0]. I've been using it for years as my POC project PaaS. I haven't yet used it for anything production-facing but I've used it to test out ideas really quickly without having to think about billing (It's on a $20/mo droplet but I used to run it on a $5/mo before I added more projects to it).

I use it to prototype/test ideas quickly, get DB/Api/Client up, running, and publicly accessible (with HTTPS) without much hassle.

It has a number of "one-click" installs for stuff like WP, Jenkins, popular DB's, popular Queues, etc but also supports running docker images (which means PHP/Node/etc support is super easy). There is also multi-host support but I've never personally used that as, again, I use this just for dev and then move to AWS/DO once I have proven it out and I am willing to pay for DB's/EC2 instances.

I'm not affiliated in any way, just someone who likes it.

[0] https://caprover.com/

Thanks. Yes, CapRover seems really nice. And also see Dokku. At some point in the past I decided both did not suit my needs. I can't remember the details exactly, but one thing with CapRover was that auth goes via username and password only, which I don't feel is safe enough (MyPaas uses RSA key pairs).

Anyway, I started out by tying Docker and Traefik together with a mix of Python and bash scripts. Eventually I decided to roll that together into something easier to maintain, so its also useful for others. And "others" includes my future self ;)

Just curious, what about Dokku didn't meet your needs? I'm the current maintainer of the project, hence the question :)
I recall that Let's Encrypt was somewhat untrivial to setup (but this may have changed?). And I liked the idea of just pushing a container/recipy with metadata and let the server handle the rest.

I should add that when I found out about Dokku and CapRover I was already using Traefik+Docker, so I was also simply biased for Traefik (Traefik is awesome).

What about just docker swarm and swarmpit with traefik?
I did not know swarmpit yet. That seems really nice and it looks like it has overlapping goals with MyPaas. Does it allow you to do remote deploys?
Yes that is what they call service deploy. If Swarmpit doesn't satisfy you on deployment you can use Apollo or command-line. It's all up to you. Swarmpit is like having a kubernetes interface without the overbloat of Kubernetes. If Swarmpit evolves in the future it will not makes sense the Kubernetes. I am almost finishing a swarm only setup in 512 MB of free RAM. For Kubernetes you need at least 4 GB.