nix-flake/modules/system/homelab/containers.nix
2026-04-15 20:05:36 +07:00

41 lines
1.1 KiB
Nix

{ homelab, lib, ... }: let
dockge-dir = "/mnt/data/apps/dockge";
stacks-dir = "${dockge-dir}/stacks";
in {
virtualisation.oci-containers.containers."dockge" = {
image = "louislam/dockge:nightly";
environment = {
"DOCKGE_STACKS_DIR" = stacks-dir;
};
volumes = [
"${stacks-dir}:${stacks-dir}:rw"
"${dockge-dir}/data:/app/data:rw"
"/var/run/docker.sock:/var/run/docker.sock:rw"
];
ports = [
"127.0.0.1:5001:5001/tcp"
];
log-driver = "journald";
labels = {
"glance.name" = "Dockge";
"glance.icon" = "si:docker";
"glance.url" = "http://containers.proxy.${homelab.domain}:5001/";
"glance.description" = "Docker Compose Management UI";
"glance.hide" = "true";
};
};
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"
];
};
}