finch
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit is contained in:
2025-05-12 10:43:56 +02:00
parent 94995a401d
commit f884fd2ed1

View File

@ -0,0 +1,73 @@
<!--
title: Docker on Apple Silicon
date: 2025-05-12
-->
# Docker on Apple Silicon - without longrunning background processes and without Rosetta
Docker itself comes with some background processes. Fine for servers, which only exists to run the containers all the time, disadvantageous for a laptop where you run a container only now and then. ChatGPT proposed `podman` and `finch` and as I already heard and read about `podman` I tried it first.
## `podman`
```
brew install podman
```
Afterwards,
```
podman machine init
podman machine start
```
is required to start a VM to run containers within. However,, while the init command directly worked, when issueing the start command I was demanded to install Rosetta. I don't want.
So
```
podman machine rm
brew uninstall podman
```
## `finch`
This is a open source product of AWS: [https://aws.amazon.com/de/blogs/opensource/introducing-finch-an-open-source-client-for-container-development/](https://aws.amazon.com/de/blogs/opensource/introducing-finch-an-open-source-client-for-container-development/).
```
brew install finch
```
Here also
```
finch vm init
finch vm stop
```
is required and afterwards containers can be executed:
```
finch run -it ubuntu bash
```
It appears, that the commandline interface of `finch` it compatible with the one of `docker`, at least I haven't found any flaws yet. Since, I usually have full docker commandline in my notes I created an alias:
```
alias docker="echo -e '\033[1;31m>>> REMEMBER: docker is finch here <<<\033[0m' && finch"
```
Using this alias (I've it in my `.bashrc`) I can call `docker` and `finch` is executed, with a big reminder that it actually is `finch`.
As soon as I don't need to run containers anymore, I can call
```
finch vm stop
```
and no process remains running. Fine.