On Linux, Podman is native. It does not use a VM.

How to Switch for Supabase

Since you already have podman installed, you can make Supabase use it instead of Docker.

  1. Enable the Podman Socket (So tools think it's Docker):

    systemctl --user enable --now podman.socket
    
  2. Tell Supabase to use Podman:Add this line to your ~/.bashrc:Then run source ~/.bashrc.

    export DOCKER_HOST="unix://$XDG_RUNTIME_DIR/podman/podman.sock"
    
  3. Test it:

    supabase start
    

In case of ip overlap, edit the file .config/containers/containers.conf

[network]
default_subnet_pools = [
  {"base" = "172.25.0.0/16", "size" = 24},
  {"base" = "172.26.0.0/16", "size" = 24}
]

<aside> 💡

In case of error, just restart the containers

Example: failed to execute http request: Get "http://127.0.0.1:54321/storage/v1/bucket": dial tcp 127.0.0.1:54321: connect: connection refused

Solution:

supabase stop --no-backup && supabase start

</aside>

Check status

 systemctl --user status podman.socket