30 lines
775 B
Nix
30 lines
775 B
Nix
{ config, lib, pkgs, ... }:
|
|
|
|
let
|
|
nginxQuadlet = pkgs.writeText "nginx-example.container" ''
|
|
[Container]
|
|
Image=nginx:latest
|
|
PublishPort=9999:80
|
|
|
|
[Service]
|
|
Restart=always
|
|
|
|
[Install]
|
|
WantedBy=default.target
|
|
'';
|
|
in
|
|
{
|
|
virtualisation.podman = {
|
|
enable = true;
|
|
# Rootless containers via user quadlets
|
|
};
|
|
|
|
# Write quadlet files into the containers user's config directory
|
|
systemd.tmpfiles.rules = [
|
|
"d /var/lib/containers/.config 0755 containers containers -"
|
|
"d /var/lib/containers/.config/containers 0755 containers containers -"
|
|
"d /var/lib/containers/.config/containers/systemd 0755 containers containers -"
|
|
"L+ /var/lib/containers/.config/containers/systemd/nginx-example.container - - - - ${nginxQuadlet}"
|
|
];
|
|
}
|