Remove portainer in favor of Docker
Some checks failed
Auto Update Build / build (pull_request) Has been cancelled

This commit is contained in:
pazpi 2026-01-31 19:18:20 +01:00
parent edb41b3245
commit c11fea4a9d
10 changed files with 44 additions and 57 deletions

View file

@ -1,3 +1,3 @@
# Containers # Containers
Easy to deploy in portainer that nix For deployments via Dockhand (WIP)

View file

@ -12,7 +12,11 @@ in
oidc = { oidc = {
clientId = "FiIJTqBIlMKmeSBjznUFgXIJadt71av8dfICvZvf"; clientId = "FiIJTqBIlMKmeSBjznUFgXIJadt71av8dfICvZvf";
endpoint = "https://auth.pasetto.me/application/o/dashy/"; endpoint = "https://auth.pasetto.me/application/o/dashy/";
scope = ["openid" "profile" "email"]; scope = [
"openid"
"profile"
"email"
];
}; };
}; };
webSearch = { webSearch = {
@ -325,10 +329,10 @@ in
}; };
items = [ items = [
{ {
title = "Portainer"; title = "Docker";
description = "Container Management"; description = "Container Management";
url = "https://portainer.${p.domains.public}"; url = "https://${p.hosts.docker}.${p.domains.public}";
icon = "hl-portainer"; icon = "hl-docker";
} }
{ {
title = "Primary DNS"; title = "Primary DNS";
@ -354,7 +358,7 @@ in
url = "https://node.${p.domains.public}:8006"; url = "https://node.${p.domains.public}:8006";
icon = "hl-proxmox"; icon = "hl-proxmox";
} }
{ {
title = "Krzo"; title = "Krzo";
description = "Proxmox Node"; description = "Proxmox Node";
url = "https://krzo.${p.domains.public}:8006"; url = "https://krzo.${p.domains.public}:8006";

View file

@ -125,7 +125,7 @@ in
uptime-kuma.proxy = { uptime-kuma.proxy = {
enable = true; enable = true;
domain = p.domains.public; domain = p.domains.public;
host = p.hosts.portainer; host = p.hosts.docker;
}; };
librenms.proxy = { librenms.proxy = {
@ -172,22 +172,22 @@ in
} }
{ {
subdomain = "ai"; subdomain = "ai";
host = "http://${p.hosts.portainer}:4080"; host = "http://${p.hosts.docker}:4080";
domain = p.domains.public; domain = p.domains.public;
} }
{ {
subdomain = "keep"; subdomain = "keep";
host = "http://${p.hosts.portainer}:3000"; host = "http://${p.hosts.docker}:3000";
domain = p.domains.public; domain = p.domains.public;
} }
{ {
subdomain = "maps"; subdomain = "maps";
host = "http://${p.hosts.portainer}:5000"; host = "http://${p.hosts.docker}:5000";
domain = p.domains.public; domain = p.domains.public;
} }
{ {
subdomain = "dock"; subdomain = "dock";
host = "http://${p.hosts.portainer}:3333"; host = "http://${p.hosts.docker}:3333";
domain = p.domains.public; domain = p.domains.public;
} }
]; ];

21
hosts/docker/default.nix Normal file
View file

@ -0,0 +1,21 @@
{
pkgs,
lib,
...
}:
{
my = {
utils = {
commons.enable = true;
lxc-standard.enable = true;
};
monitoring.uptime-kuma.enable = true;
virtualisation = {
proxmox.enable = true;
};
};
system.stateVersion = "24.11";
}

View file

@ -29,7 +29,7 @@
"auth" "auth"
"metrics" "metrics"
"nextcloud" "nextcloud"
"portainer" "docker"
"vaultwarden" "vaultwarden"
"immich" "immich"
"firefly-iii" "firefly-iii"
@ -155,12 +155,12 @@
]; ];
}; };
portainer = { docker = {
module = ./portainer; module = ./docker;
tags = [ tags = [
"lxc" "lxc"
"bacco" "bacco"
"portainer" "docker"
"secondary" "secondary"
]; ];
}; };

View file

@ -104,7 +104,7 @@ in
"${p.hosts.nextcloud}:${defaultNodePort}" "${p.hosts.nextcloud}:${defaultNodePort}"
"${p.hosts.vaultwarden}:${defaultNodePort}" "${p.hosts.vaultwarden}:${defaultNodePort}"
"${p.hosts.plex}:${defaultNodePort}" "${p.hosts.plex}:${defaultNodePort}"
"${p.hosts.portainer}:${defaultNodePort}" "${p.hosts.docker}:${defaultNodePort}"
]; ];
} }
]; ];

View file

@ -17,7 +17,7 @@ in
nextcloud = "nextcloud.${private-domain}"; nextcloud = "nextcloud.${private-domain}";
vaultwarden = "vaultwarden.${private-domain}"; vaultwarden = "vaultwarden.${private-domain}";
plex = "plex.${private-domain}"; plex = "plex.${private-domain}";
portainer = "portainer.${private-domain}"; docker = "docker.${private-domain}";
colmena = "colmena.${private-domain}"; colmena = "colmena.${private-domain}";
pve01 = "bacco${private-domain}"; pve01 = "bacco${private-domain}";
pve02 = "node.${private-domain}"; pve02 = "node.${private-domain}";

View file

@ -1,38 +0,0 @@
{
config,
pkgs,
lib,
...
}:
let
portainerDataDir = "/var/lib/portainer"; # Define the directory for persistent data
in
{
age.secrets.watchtowerSecrets.file = ../../secrets/watchtower-secrets.age;
my = {
utils = {
commons.enable = true;
lxc-standard.enable = true;
};
monitoring.uptime-kuma.enable = true;
virtualisation = {
proxmox.enable = true;
portainer = {
enable = true;
enableWatchtower = true;
environmentSecrets = config.age.secrets.watchtowerSecrets.path;
};
};
};
# Extra packages
environment.shellAliases = {
docker = "sudo docker";
};
system.stateVersion = "24.11";
}

View file

@ -16,7 +16,7 @@ let
machines.caddy machines.caddy
machines.metrics machines.metrics
]; ];
watchtower-secrets = [ machines.portainer ]; watchtower-secrets = [ machines.docker ];
authentik-env = [ machines.auth ]; authentik-env = [ machines.auth ];
dns01-admin-password = [ machines.dns01 ]; dns01-admin-password = [ machines.dns01 ];
dns02-admin-password = [ machines.dns02 ]; dns02-admin-password = [ machines.dns02 ];

View file

@ -13,7 +13,7 @@ rec {
nextcloud = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGYobAlQ9tPKjyh7eE2Ku81ZiMY6OWd3ELDqo+xBmjbC"; nextcloud = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGYobAlQ9tPKjyh7eE2Ku81ZiMY6OWd3ELDqo+xBmjbC";
vaultwarden = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOW9uYQpPMiKvI/KFRvd/5f9J8a0zLaQxstWRI8VNObV"; vaultwarden = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIOW9uYQpPMiKvI/KFRvd/5f9J8a0zLaQxstWRI8VNObV";
plex = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINp9itRJGSSVWLxwrcudyGUNOOKl+qqtf+IzLHrhffyt"; plex = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINp9itRJGSSVWLxwrcudyGUNOOKl+qqtf+IzLHrhffyt";
portainer = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMgg4SKMCw2/21l1crY7trFnrCmNSrkYPl3vEDnJ8aQn"; docker = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIMgg4SKMCw2/21l1crY7trFnrCmNSrkYPl3vEDnJ8aQn";
auth = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFsSQbXHRt+MpUh+YQxd5p6YPnbbWR/4ylz/pXjdZ9Bs"; auth = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFsSQbXHRt+MpUh+YQxd5p6YPnbbWR/4ylz/pXjdZ9Bs";
dns01 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII7BdiP/dCE6FHoJylcBKQ5AXz06UpLHNyeuvfLVccSi"; dns01 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAII7BdiP/dCE6FHoJylcBKQ5AXz06UpLHNyeuvfLVccSi";
dns02 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ+HIq6/ebjiv71xDozdOTn5AdnXgr1fGqIzXnH7Not+"; dns02 = "ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJ+HIq6/ebjiv71xDozdOTn5AdnXgr1fGqIzXnH7Not+";