nix-flake/modules/system/homelab/containers.nix

33 lines
868 B
Nix

{ lib, homelab, ... }: let
stacks-dir = "${homelab.disks.data}/dockge/stacks";
in {
virtualisation.oci-containers.containers."dockge" = {
image = "louislam/dockge:latest";
environment = {
"DOCKGE_STACKS_DIR" = stacks-dir;
};
volumes = [
"${stacks-dir}:${stacks-dir}:rw"
"/root/dockge:/app/data:rw"
"/var/run/docker.sock:/var/run/docker.sock:rw"
];
ports = [
"127.0.0.1:5001:5001/tcp"
];
log-driver = "journald";
};
systemd.services."docker-dockge" = {
serviceConfig = {
Restart = lib.mkOverride 500 "always";
RestartMaxDelaySec = lib.mkOverride 500 "1m";
RestartSec = lib.mkOverride 500 "100ms";
RestartSteps = lib.mkOverride 500 9;
};
wantedBy = [
"multi-user.target"
"network.target"
"docker.service"
];
};
}