6 ms·
Recently I started using colima[0], a drop in replacement for Docker Desktop on Mac, and have seen an increase in performance and battery life. You can use all
by LooerCell 4y ago
Recently I started using colima[0], a drop in replacement for Docker Desktop on Mac, and have seen an increase in performance and battery life. You can use all the normal docker and docker compose commands.
It does not have a GUI but you can use the Docker extension on VS Code to have an overview of running containers.
[0]https://github.com/abiosoft/colima https://github.com/abiosoft/colima
- ArcMex 4y agoSorry but off topic. At what point did containerization begin to make sense for your workflow?
- afhammad 4y agoNot OP, but if it's helpful, I use containers for all 3rd party services I need to run for development. (e.g. Postgres, Redis, Localstack, etc). This makes it easy to onboard new developers as they just have to run `docker-compose up` and not worry about those. It also allows me to easily use different versions of those services in different projects or even branches of a project.
- throwawaaarrgh 4y agoBest part: it's QEMU so you can choose your CPU architecture and run x86_64 containers on ARM Macs
- dilyevsky 4y agoThat works via qemu userspace emulation inside of VM so docker desktop has it too (might need to install qemu binfmt_misc hooks package)
- Hasnep 4y agoI've been telling my colleagues with M1 Macs to use the --platform linux/arm64 argument with Docker Desktop and that seems to be working for them.
- Art9681 4y agoPodman works the same way.
- ec109685 4y agox86_64 containers on ARM mac are extremely slow.
- anentropic 4y agoIt seems this may get better soon, when they run via Rosetta 2 rather than QEMU(?) https://github.com/docker/roadmap/issues/384 https://github.com/docker/roadmap/issues/384
- dmix 4y agoI found even with ARM Docker containers were already slow as it was. I also never understood the justification for the added complexity it created, but I also don't have a dedicated ops team at my job to solve my problems.
- shad42 4y agoReplaced Desktop with `colima` as well few months ago. I've been using it daily since then. I did not have any issue, sometimes I just delete / start a instance to upgrade the docker version, it only takes few minutes. I like the fact that I decide when I upgrade, not Docker Desktop nagging me every week.
- swyx 4y agoi wrote a quick howto a while ago for anyone looking to try this out https://www.swyx.io/running-docker-without-docker-desktop https://www.swyx.io/running-docker-without-docker-desktop
- deleted 4y ago[deleted]
- onetimeuse1234 4y agoPlease help me understanding: Why is `brew install docker` not sufficient, why do you also need Colima or Docker Desktop? Is it so that there is a docker _daemon_ installed which `docker` doesn't ship with?
- ZiiS 4y agoOSX dose not support running docker containers (or vis versa depending on your point of view). Instead you need a VM running Linux. Docker Desktop / Colima runs this VM for you.
- deleted 4y ago[deleted]
- dinosaurdynasty 4y agoI assume `brew install docker` just installs the docker CLI/etc, which can run on non-Linux OSes. However the docker daemon can only run on Linux, so something needs to setup a VM for it.
- eropple 4y agoHomebrew handles this kinda poorly, so people are often confused. `brew install docker` installs the Docker CLI. `brew install --cask docker` installs Docker Desktop, and if you've permanently tapped homebrew-cask you'll get that instead of the Docker CLI.
- tyrshand 4y agoomg that is terrible
- fjckvuvub5 4y agoLinux user here. It's not terrible. It's funny.
- vbezhenar 4y agoThanks for sharing. I missed something like that. Docker is too enterprisy to my taste. I'm using VPS with docker right now which works good enough, but no volume mounts is not very nice.
- jzelinskie 4y agoLooking to convert, but I still can't understand how this is more performant. Docker Desktop has lots of engineering going into performance crossing the host/VM barrier. IIRC lima just pipes over SSH. How could that be faster?
- russelg 4y agoIt's quite trivial to have both installed and you can easily switch between Colima and Docker, I think it's worth testing it out.
- drcongo 4y agoI only use Docker Desktop for one thing - to see if one of my containers has accidentally started itself as amd64 instead of arm64. Sadly Colima doesn't seem to provide a way to do that.
- cosmotic 4y agoDocker is an electron app which might explain some of the performance and battery differences. The containers don't run in electron but that extra copy of chrome is always running in the background.
- user- 4y agomy personal experience. Much earlier this year at work, we migrated everyone to colima and I had to support devs with their issues. So many small issues kept popping up, and was definitely not a drop in replacement for us. The higher ups eventually let us just buy docker desktop and we are all happier now.
- jonwest 4y agoExact same experience here to the point where I wasn’t sure if we worked together haha
- elcritch 4y agoDoes anyone know if the networking lets you ping the docker vm directly? Looks like there's an `colima start --network-address`. I just spent the day trying to get a docker vm I can ping directly.
- reilly3000 4y agoIt’s been a really doozy for me too, doubly so for local k8s in Docker (kind/k3s). I’ve tried a whole lot of variations, it’s hard and harder to scale across hundreds of devices.
- elcritch 4y agoWell the `colima start --network-address` lets me ping the VM and to use `--net=host`. Nice!
- chisquared 4y agoSame. My requirements are very basic, so the switch to colima was basically seamless. I also appreciated being able to avoid Docker Desktop constantly trying to update itself (which is what ultimately motivated me to make the switch). As a bonus, you can install the Docker CLI (e.g. `brew install --formula docker`) and use that to interact with any containers you start with colima.
- twalla 4y agoSwitched to colima a while back after the licensing debacle and have been mostly happy with it. Only real issue has been with some tools making assumptions about the docker socket location, which was easy to fix in the config file.
- Makobado1 4y ago
- _cenw 4y agosomehow colima and my corporate vpn (using vpnc) keep deleting each others routes (colima loses network access when you turn off vpnc) and neither podman machine nor rancher desktop have this issue.
- tanepiper 4y agoSame here, it's what I've been recommending as the alternative.
- deleted 4y ago[deleted]