Podman
I have install podman in a WSL2 Debian on Murre. Now I am trying to make it do something useful.
I am currently using docker-compose all the time so learning how to migrate compose project is paramount.
I think Murre will end up being a good place to run experimental containers since it's many times faster than Bellman.
Bellman for deployment, Murre for development.
This is a list of Dockers running on Bellman today. I don't suppose I need compose for any of these, really... do I?
- home-assistant - home automation
- proxy - Reverse proxy using NGINX
- proxy-letsencrypt - Certificate manager
- squeezebox - Logitech media server
- timemachine - Macintosh backups
- traccar - Traccar GPS fleet management
- traccar-mysql - mysql for Traccar
- unifi - Ubiquiti management software
- WABDE - ESRI Web App Builder, Developer Edition
Also I experiment with geoserver and geowebcache, which needs postgis/postgresql and pgadmin (or dbadminer), mapproxy which needs couchdb, mssql
I use lots of volumes.
local geoserver_data local geoserver_pgadmin local geoserver_postgis_backups local geoserver_postgis_data local geowebcache_data local home-assistant_config local mapproxy_cache local mapproxy_config local mapproxy_couchdb_data local mssql_data local mssql_log local mssql_secrets local proxy_certs local proxy_conf local proxy_dhparam local proxy_html local squeezebox_settings local traccar_conf local traccar_database local traccar_logs local unifi_data local unifi_initd local unifi_log
I need to understand how to make them start at boot without Docker daemon.
Migrating from Docker
Generally it has become my habit to use docker-compose for just about every container I set up. It's just a convenient way to bundle together the settings for the container plus volumes, network ports, and so on all in one docker-compose.yml file. An example would be Unifi, it's just one web app but it has 3 volumes.
Podman does not have a completed "podman-compose" option at this time, they are working on it. They have "pods" which is a way to group containers into a single virtual network, and I will be exploring this option.
Potential issues
- home-assistant needs access to USB serial devices.
- dns and hostnames
- different network modes
- mapping ports
Simple Docker migration
Using Unifi as an example,
podman pod create --name unifi --publish 8443 podman volume create unifi_data podman volume create unifi_log podman volume create unifi_initd podman container create \ --name unifi \ --pod unifi \ --restart always \ --volume unifi_data:/unifi/data \ --volume unifi_log:/unifi/log \ --volume unifi_initd:/unifi/init.d \ --volume ./cert:/unifi/cert:ro \ jacobalberty/unifi:latest podman pod restart unifi
Docker Compose migration
https://www.metamost.com/migrating-from-docker-compose-to-podman/
Let's try traccar + traccar-mysql...