Andrew Welch sings the praises of using Docker containers for local dev environments:
Here are the advantages of Docker for me:
• Each application has exactly the environment it needs to run, including specific versions of any of the plumbing needed to get it to work (PHP, MySQL, Postgres, whatever)
• Onboarding others becomes trivial, all they need to do is install Docker and type docker-compose up and away they go
• Your development environment is entirely disposable; if something goes wrong, you just delete it and fire up a new one
• Your local computer is separate from your development environment, so switching computers is trivial, and you won’t run into issues where you hose your computer or are stuck with conflicting versions of DevOps services
• The cost of trying different versions of various services is low; just change a number in a
.yamlfile, docker-compose up, and away you go
Here’s an, uhm, very different perspective I’m anonymously posting that I snagged from a group Slack:
I have spent basically the whole day fucking around with Docker bullshit.
This has now cost the client literally thousands of dollars in me not getting any actual work done. The setup was created by the dev team, who are great, but the brittle, unstable nature of this is, well, bullshit.
I get the motivation but everyone knows that Docker is horribly slow on the Mac. It has for several years and yet it’s still in use. I just don’t get it.
Is there any way that developing with Docker on a Mac can not suck? Asking for a friend. Who is me.