Live data from Hacker News

Dissatisfied with Docker

robert.ocallahan.org

111–120 of 229 posts

Re: Dissatisfied with Docker

#111
post #44

What's wrong with booting a VM off a standardized base image (e.g. an AMI), and then applying simple deployment scripts for each application you need to run? You could probably replicate 90% of the justification for using docker with some basic scripting. git clone https://github.com/myprofile/my-cool-app cd my-cool-app chmod +x deploy.sh ./deploy.sh That's it. The above script would be responsible for getting your a…

This is what I ended up doing. Don't laugh, but I spent about two weekends furiously learning docker for a side project, only to replace it with a shell script of about 100 lines. I'm sure containers have valid use cases for larger teams, but for one person I didn't see the point at all - especially as I use the same OS for dev and production.

Docker is not only about having reproducible environments. I mostly work as a single developer and I use Docker all the time, mainly because I like the isolation properties and because it's super easy to launch certain services (e.g. set up a postgres database). In the past really often I would have issues with conflicting dependencies, that's all gone now. The fact that your shell script did the job for you is obviously a good thing, but maybe that just means that in this particular situation Docker didn't have much to offer for you.

Re: Dissatisfied with Docker

#112
post #37

I've been using Docker since 2015ish and the container start up / stop speed is really the only thing that bugs me. Everything else is fine for day to day usage IMO (on Windows and Linux at least) and very much worth the trade offs, but having to wait multiple seconds for your app to start is tedious since it plays such a heavy role in both development and even in production. Each second your app is not running is do…

I take it you've never worked in an enterprise Java shop with a few million line legacy code base deployed to whatever the hell webserver I can't remember the name of right now.

Seconds is great in comparison. Minutes, not so much.

Re: Dissatisfied with Docker

#113
post #19

All I want is a process that can be frozen and copied to multiple servers. start/stop is merely a state change.

That's quite an oversimplification of the problem, copying stack/heap/etc. Anyways, check out CRIU as a starting point.

Re: Dissatisfied with Docker

#114
post #44

What's wrong with booting a VM off a standardized base image (e.g. an AMI), and then applying simple deployment scripts for each application you need to run? You could probably replicate 90% of the justification for using docker with some basic scripting. git clone https://github.com/myprofile/my-cool-app cd my-cool-app chmod +x deploy.sh ./deploy.sh That's it. The above script would be responsible for getting your a…

This is what I ended up doing. Don't laugh, but I spent about two weekends furiously learning docker for a side project, only to replace it with a shell script of about 100 lines. I'm sure containers have valid use cases for larger teams, but for one person I didn't see the point at all - especially as I use the same OS for dev and production.

I use docker all the time when doing side projects by myself. It's nice because I don't know ahead of time what the dependencies will be but I don't really care. I just pull in all the container images via docker compose and suddenly everything is there and talking to each other.

I find it very ergonomic outside the need to run docker system prune from time to time.

I also value it highly when some open source project I want to play with has docker compose in its readme. Super easy just to spin it up.

Re: Dissatisfied with Docker

#115

Earlier quoted context omitted.

those scripts are now built into docker with `docker system prune`

“docker system prune” is a recipe for pegging my cpu for the next few hours.

It used to be, with docker for Mac v2 it became fast for me. Problem is I don't wanna be wiping out dozens of images, figure out which ones I wanna keep etc. I want a configuration setting saying "keep X versions" and the rest will automatically get pruned.

Re: Dissatisfied with Docker

#116
post #14

The article is completely on point. Because of all the reasons exposed there (and a few more) I started Wasmer, a new container system based on WebAssembly - https://wasmer.io/ Here are some advantages of Wasmer vs Docker: * Much faster startup time * Smaller containers * OS independent containers (they can run in Linux, macOS and Windows) * Chipset independent containers (so they can run anywhere: x86_64, Aarch64/AR…

One thing I also find sorely lacking in Docker is the ability to run your containers with the appropriate seccomp privileges (in order to enforce Principle of Least Authority). I know this is possible with Docker, but it's not really done much in practice because of various difficulties. I wonder how difficult it would be to do that with your tool?

Seccomp is a horrible security model for containers, if the application or it's libraries use differing syscalls the seccomp ruleset is invalid

Re: Dissatisfied with Docker

#117
post #3
post #2

I am currently on this train. Having used rkt in the past, I went to revisit it recently only to find this: https://www.cncf.io/blog/2019/08/16/cncf-archives-the-rkt-pr... I am so extremely disappointed in the CNCF as rkt (at the time, at least) seemed to be more "production ready" than Docker. Are there any real alternatives? Is the answer "find something else that uses containerd in a more friendly way?" Is the ans…

Podman looks interesting at a quick glance, though not supporting docker-compose makes migrating nontrivial for us.

It was discussed recently in the podman Github issues that this functionality will be covered by the separately maintained podman-compose, which was recently transferred here:

https://github.com/containers/podman-compose

Re: Dissatisfied with Docker

#118

> In fact, a global system daemon should not be needed. Either users should be able to run their own daemons or container management should avoid having a daemon at all, by storing container state in a shared database. Absolutely love Podman. You can even define registries to work with docker hub, easily. https://podman.io

Interesting!

Are there management tools like Portainer available? Or would, even better, Portainer work with Podman?

Re: Dissatisfied with Docker

#119
post #37

I've been using Docker since 2015ish and the container start up / stop speed is really the only thing that bugs me. Everything else is fine for day to day usage IMO (on Windows and Linux at least) and very much worth the trade offs, but having to wait multiple seconds for your app to start is tedious since it plays such a heavy role in both development and even in production. Each second your app is not running is do…

The long startup time is somehow what keeps me from really liking Docker. In the end (if I understood correctly), it is supposed to be the go-to tool for serverless architecture. If my serverless function needs more then a second to startup, it's not usable for me.

Even the hello-world container, which is only a few kB in size needs roughly a second to startup.

Re: Dissatisfied with Docker

#120

> In fact, a global system daemon should not be needed. Either users should be able to run their own daemons or container management should avoid having a daemon at all, by storing container state in a shared database. Absolutely love Podman. You can even define registries to work with docker hub, easily. https://podman.io

Yeah but no docker-compose support :/ dealbreaker for us. Theres an alpha podman-compose project but we couldn't get it running.
Post reply on HN