Compare commits
3 commits
7e98e88069
...
6cdc944451
| Author | SHA1 | Date | |
|---|---|---|---|
| 6cdc944451 | |||
| 9a8557c39a | |||
| 590b3e0fea |
6 changed files with 37 additions and 7 deletions
|
|
@ -65,7 +65,7 @@
|
|||
in {
|
||||
nixosConfigurations = {
|
||||
thinkpad = nixosConfigWithHome "thinkpad";
|
||||
homelab = nixosConfig "homelab";
|
||||
homelab = nixosConfigWithHome "homelab";
|
||||
bootstrap = nixosConfig "bootstrap";
|
||||
};
|
||||
homeConfigurations = {
|
||||
|
|
|
|||
5
hosts/homelab/home.nix
Normal file
5
hosts/homelab/home.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ ... }: {
|
||||
imports = [
|
||||
../../modules/home
|
||||
];
|
||||
}
|
||||
|
|
@ -6,9 +6,9 @@
|
|||
};
|
||||
in {
|
||||
fileSystems = {
|
||||
"/mnt/share" = globalOpts // {
|
||||
device = homelab.disks.share;
|
||||
};
|
||||
# "/mnt/share" = globalOpts // {
|
||||
# device = homelab.disks.share;
|
||||
# };
|
||||
"/mnt/data" = globalOpts // {
|
||||
device = homelab.disks.data;
|
||||
};
|
||||
|
|
|
|||
|
|
@ -52,11 +52,17 @@
|
|||
[ "CDN" "http://localhost:3000/" ]
|
||||
[ "Proxy" "https://proxy.${homelab.domain}/" ]
|
||||
];
|
||||
external = [
|
||||
[ "Proxmox" "proxmox" "https://server.proxy.${homelab.domain}" "http://server.dns.${homelab.domain}:8006/" ]
|
||||
[ "OpenWRT" "openwrt" "https://router.proxy.${homelab.domain}" "http://router.dns.${homelab.domain}:80/" ]
|
||||
[ "HomeAssistant" "homeassistant" "https://home.proxy.${homelab.domain}" "http://home.dns.${homelab.domain}:8123/" ]
|
||||
[ "OpenMediaVault" "openmediavault" "https://nas.proxy.${homelab.domain}" "http://nas.dns.${homelab.domain}:80/" ]
|
||||
[ "ApacheHTTPD" "apache" "https://cdn.proxy.${homelab.domain}" "http://nas.dns.${homelab.domain}:3000/" ]
|
||||
];
|
||||
services = [
|
||||
[ "PocketID" "authentik" "https://auth.${homelab.domain}" "http://localhost:1411/" ]
|
||||
[ "Forgejo" "forgejo" "https://git.${homelab.domain}" "http://localhost:5080/" ]
|
||||
[ "AdGuardHome" "adguard" "https://dns.proxy.${homelab.domain}" "http://localhost:8088/" ]
|
||||
[ "ApacheHTTPD" "apache" "https://cdn.proxy.${homelab.domain}" "http://localhost:3000/" ]
|
||||
[ "Immich" "immich" "https://gallery.proxy.${homelab.domain}" "http://localhost:2283/" ]
|
||||
[ "Jellyfin" "jellyfin" "https://media.proxy.${homelab.domain}" "http://localhost:8096/" ]
|
||||
[ "VaultWarden" "vaultwarden" "https://pass.proxy.${homelab.domain}" "http://localhost:8060/" ]
|
||||
|
|
@ -258,6 +264,19 @@ in {
|
|||
type = "server-stats";
|
||||
servers = [{ type = "local"; }];
|
||||
}
|
||||
{
|
||||
type = "monitor";
|
||||
cache = "1m";
|
||||
title = "External";
|
||||
sites = map (e: {
|
||||
same-tab = true;
|
||||
allow-insecure = true;
|
||||
title = builtins.elemAt e 0;
|
||||
icon = "si:${builtins.elemAt e 1}";
|
||||
url = builtins.elemAt e 2;
|
||||
check-url = builtins.elemAt e 3;
|
||||
}) external;
|
||||
}
|
||||
{
|
||||
type = "monitor";
|
||||
cache = "1m";
|
||||
|
|
|
|||
|
|
@ -1,13 +1,18 @@
|
|||
{ homelab, lib, ... }: let
|
||||
base = "proxy.${homelab.domain}";
|
||||
hosts = {
|
||||
"server" = { dest = "http://server.dns.${homelab.domain}:8006"; auth = false; };
|
||||
"router" = { dest = "http://router.dns.${homelab.domain}:80"; auth = false; };
|
||||
"home" = { dest = "http://home.dns.${homelab.domain}:8123"; auth = false; };
|
||||
"nas" = { dest = "http://nas.dns.${homelab.domain}:80"; auth = false; };
|
||||
"cdn" = { dest = "http://nas.dns.${homelab.domain}:3000"; auth = false; };
|
||||
|
||||
"dns" = { dest = "http://localhost:8088"; auth = true; };
|
||||
"ai" = { dest = "http://localhost:8080"; auth = true; };
|
||||
|
||||
"containers" = { dest = "http://localhost:5001"; auth = false; };
|
||||
"remote" = { dest = "http://localhost:8085"; auth = false; };
|
||||
"pass" = { dest = "http://localhost:8060"; auth = false; };
|
||||
"cdn" = { dest = "http://localhost:3000"; auth = false; };
|
||||
|
||||
"gallery" = { dest = "http://localhost:2283"; auth = false; };
|
||||
"media" = { dest = "http://localhost:8096"; auth = false; };
|
||||
|
|
|
|||
|
|
@ -6,12 +6,13 @@
|
|||
];
|
||||
in {
|
||||
imports = [
|
||||
# ./homelab/share.nix # gonna use omv for now
|
||||
|
||||
./homelab/containers.nix
|
||||
./homelab/gallery.nix
|
||||
./homelab/tunnels.nix
|
||||
./homelab/remote.nix
|
||||
./homelab/media.nix
|
||||
./homelab/share.nix
|
||||
./homelab/proxy.nix
|
||||
./homelab/auth.nix
|
||||
./homelab/pass.nix
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue