4.4 KiB
4.4 KiB
podman
è un gestore di container come #docker che funziona anche in modalità serverless- Nel mese di ottobre 2024 ho iniziato a migrare i servizi del mio #homelab su #podman
- Rimozione di una precedente installazione di #docker preliminare all'installazione di #podman
-
sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli docker-compose-plugin sudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce docker-compose-plugin
- Qualora si vogliano rimuovere anche i file e le cartelle relativi alla precedente installazione di #docker
-
sudo rm -rf /var/lib/docker /etc/docker sudo rm /etc/apparmor.d/docker sudo groupdel docker sudo rm -rf /var/run/docker.sock sudo rm -rf /var/lib/containerd sudo rm -r ~/.docker
-
- Rimuovere eventuali interfacce di rete
bridge
create dadocker
(script creato con l'ausilio del #llmphind
)-
#!/bin/bash # Check if we're running with root privileges if [ "$(id -u)" != "0" ]; then echo "This script must be run with sudo" exit 1 fi # Find all interfaces starting with 'br-' and delete them for interface in $(ip link show | grep -oP '^(.*br-\S+)' | cut -d':' -f2- | sed 's/.$//'); do ip link delete $interface done
-
-
- Installazione su un sistema #archlinux
id:: 66f12589-34d7-4a14-b226-d59679c70d28
- Per installare
podman
su un sistema Arch Linux in modo che funzioni comedocker
-
sudo pacman -R docker # uninstall previous docker installation sudo pacman -S podman # install podman podman run -p 8080:80/tcp docker.io/library/httpd # test the installation docker ps
- Se si vuole mimare il comportamento di
docker
conpodman
-
sudo pacman -S podman-docker sudo pacman -S docker-compose systemctl --user enable podman.sock systemctl --user start podman.sock export DOCKER_HOST=unix:///run/user/$(id -u)/podman/podman.sock sudo rm /var/run/docker.sock ln -s /run/user/$(id -u)/podman/podman.sock docker.sock docker ps # test the aliasing
-
- Per installare
- Installazione su un sistema #debian
- Per installare
podman
su un sistema Debian/Ubuntu in modo che funzioni comedocker
-
sudo apt remove sudo apt install podman podman-docker
-
- Per installare
- Migrazione da #docker a #podman
- Assicurarsi di avere a disposizione i dati all'interno dei volumi docker, eventualmente esportando e reimportando i database
- Nel caso di #mariadb
-
docker exec -i gogs-db-1 mariadb-dump -ugogs -pgogs gogs > sql/gogs-14_10_2024.sql docker exec -i gogs-db-1 mariadb -ugogs -pgogs gogs < sql/gogs-14_10_2024.sql
-
- Nel caso di #postgres
-
# Esportazione docker exec -t your-db-container pg_dumpall -c -U postgres > dump_`date +%Y-%m-%d"_"%H_%M_%S`.sql # Importazione cat sql/mastodon_14_10_2024.sql | docker exec -i mastodon-db-1 psql -U mastodon
-
- Nel caso di #mariadb
- Rimuovere #docker dal sistema
-
sudo apt-get purge -y docker-engine docker docker.io docker-ce docker-ce-cli docker-compose-plugin sudo apt-get autoremove -y --purge docker-engine docker docker.io docker-ce docker-compose-plugin
-
- Per emulare le funzionalità di
docker compose
-
## Installare i pacchetti podman-compose e docker-compose ## es: sudo pacman -S podman-docker && sudo pacman -S docker-compose ## rootful mode sudo systemctl enable podman.socket sudo systemctl start podman.socket ## rootless mode systemctl --user enable --now podman.socket wget https://github.com/docker/compose/releases/download/v2.29.7/docker-compose-linux-x86_64 ## rootful mode chmod +x ... mv docker-compose /usr/bin/
- Per disabilitare il messaggio di avviso di utilizzo di un provider esterno per compose
-
Attenzione per un bug di podman su Ubuntu 24.04 è necessario utilizzare un repository sperimentale(potrebbe non essere più necessario alla data del 16.10.2024)-
sudo add-apt-repository ppa:brightbox/experimental sudo apt update sudo apt upgrade
- Riferimento: https://www.monotux.tech/posts/2024/09/ubuntu-2404-podman/
-
- Assicurarsi di avere a disposizione i dati all'interno dei volumi docker, eventualmente esportando e reimportando i database
- Gestire i container #podman con #systemd
- Creare la cartella
~./config/systemd
-
mkdir ~/.config/systemd
-
- Creare la cartella