2.5 KiB
2.5 KiB
Podman
Notes
- podman auth is stored in
/run/user/1000/containers
Podman systemd files
Rather than copying compose files or running podman run as systemd services you can generate quadlet files to define containers that run at boot.
Podlet generates quadlets - systemd files specifically for containers.
You generate quadlets from compose files like so:
podman run \
-v ./compose:/compose \
-v ./quadlets:/quadlets \
quay.io/k9withabone/podlet \
-f /quadlets \
-i \
--overwrite \
compose /compose/grafana-compose.yaml
Copy these files to /usr/share/containers/systemd/
iperf3
podman run \
-v ./compose:/compose \
-v ./quadlets:/quadlets \
quay.io/k9withabone/podlet \
-f /quadlets \
-i \
--overwrite \
compose /compose/iperf3-compose.yaml
pihole
podman run \
-v ./compose:/compose \
-v ./quadlets:/quadlets \
quay.io/k9withabone/podlet \
-f /quadlets \
-i \
--overwrite \
--wants network-online.target \
--after network-online.target \
compose /compose/pihole-compose.yaml
Grafana
podman run \
-v ./compose:/compose \
-v ./quadlets:/quadlets \
quay.io/k9withabone/podlet \
-f /quadlets \
-i \
--overwrite \
compose /compose/grafana-compose.yaml
Nginx
nginx proxies all other services.
Nginx Build
podman build -f nginx-stream/Containerfile -t docker.io/ducoterra/nginx-stream:latest
podman build -f dns/Containerfile -t docker.io/ducoterra/nginx-stream-dns:latest
podman push docker.io/ducoterra/nginx-stream:latest
podman push docker.io/ducoterra/nginx-stream-dns:latest
podman-compose -f compose/nginx-compose.yaml up -d
Nginx Run
podman-compose -f compose/nginx-compose.yaml up
Quadlet Generation
podman run \
-v ./compose:/compose \
-v ./quadlets:/quadlets \
quay.io/k9withabone/podlet \
-f /quadlets \
-i \
--overwrite \
compose /compose/nginx-stream-compose.yaml
Update yellow/orange
ansible-playbook -i ansible/inventory.yaml ansible/update-quadlets.yaml