Has anyone switched from Docker to devenv.sh (or anything else) for a development environment?

I’ve been a staunch Docker user, because I hate dealing with the infamous “but it works on my machine” problem. As far as I’m concerned, Docker made Vagrant obsolete.

I’ve read that devenv.sh has many advantages over Docker, such as speed of operation. I know that Docker is still being used for Continuous Integration (such as GitHub Actions and GitLab CI), but I’m now wondering if dotenv.sh (or anything else) would be better for my local development environment.

I’d like to know about your experiences. If you’ve made the switch from Docker to devenv.sh (or anything else), please tell your story. If you’ve seriously tried devenv.sh (or anything else that claims to be better than Docker) but didn’t like it for some reason, please explain why.

I have not tried devenv.sh before but I’d be curious to know what kind of performance issues specifically you’re experiencing?

I’ve been using Docker for years at this point, generally happily now but performance had been an issue for quite some time. Particularly volume mounts on macos: they were were slow, boot times of certain containers were slow, etc.

In my experience much of that seems to be vastly improved over the last few years with a couple tools available to Pro/Team/Business accounts, and some minor tweaking. The synchronized file shares docs go into how to set this up

Some things are still pretty slow (like booting up localstack) but not the day-to-day stuff that I do (I’d down/up my environment 1x a day, if at all).

In my experience, the biggest issues were:

  1. Volume mounts on macos (largely improved in last few years, may need a Pro account)
  2. Under-sized macbook pros (18GB RAM/500GB disk size) coupled with services that require some RAM/disk space to function
  3. Missing/misunderstood behaviors (not restricting volume mount sizes, mounting massive folder that didn’t need to be mounted)

As an example of number 3, a User reported their docker was unresponsive and it was because they hadn’t cleaned their development.log file out in 5+ years and it was something absurd (90GB?). Once that was deleted, and docker restarted, everything was fine again