mirror of
https://gitlab.com/upRootNutrition/dotfiles.git
synced 2025-12-06 21:17:14 -06:00
test: setting up opencloud and microvms
This commit is contained in:
parent
0ed3bb9b64
commit
b5929e0834
8 changed files with 79 additions and 35 deletions
|
|
@ -16,7 +16,7 @@ in
|
||||||
ports = {
|
ports = {
|
||||||
port0 = 80;
|
port0 = 80;
|
||||||
port1 = 443;
|
port1 = 443;
|
||||||
port2 = 8443;
|
port2 = 8080;
|
||||||
port3 = 8445; # Opencloud
|
port3 = 8443;
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -32,7 +32,7 @@ in
|
||||||
];
|
];
|
||||||
subdomain = subdomain;
|
subdomain = subdomain;
|
||||||
ports = {
|
ports = {
|
||||||
port0 = 8080;
|
port0 = 8084;
|
||||||
port1 = 8081;
|
port1 = 8081;
|
||||||
};
|
};
|
||||||
interface = {
|
interface = {
|
||||||
|
|
|
||||||
|
|
@ -45,7 +45,7 @@ in
|
||||||
imports = builtins.attrValues {
|
imports = builtins.attrValues {
|
||||||
inherit (modules)
|
inherit (modules)
|
||||||
acme
|
acme
|
||||||
caddy
|
caddy0
|
||||||
comfyui
|
comfyui
|
||||||
firefly-iii
|
firefly-iii
|
||||||
forgejo
|
forgejo
|
||||||
|
|
@ -71,7 +71,7 @@ in
|
||||||
imports = builtins.attrValues {
|
imports = builtins.attrValues {
|
||||||
inherit (modules)
|
inherit (modules)
|
||||||
acme
|
acme
|
||||||
caddy
|
caddy1
|
||||||
impermanence
|
impermanence
|
||||||
microvm
|
microvm
|
||||||
opencloud0
|
opencloud0
|
||||||
|
|
|
||||||
33
modules/nixos/services/caddy/caddy0/default.nix
Executable file
33
modules/nixos/services/caddy/caddy0/default.nix
Executable file
|
|
@ -0,0 +1,33 @@
|
||||||
|
{ flake, ... }:
|
||||||
|
let
|
||||||
|
inherit (flake.config.services) instances;
|
||||||
|
inherit (flake.config.machines.devices) eris;
|
||||||
|
opencloud = instances.opencloud0;
|
||||||
|
service = instances.caddy;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.caddy = {
|
||||||
|
enable = true;
|
||||||
|
virtualHosts = {
|
||||||
|
"${opencloud.domains.url0}" = {
|
||||||
|
extraConfig = ''
|
||||||
|
reverse_proxy ${eris.ip.address0}:${builtins.toString service.ports.port1} {
|
||||||
|
transport http {
|
||||||
|
tls
|
||||||
|
tls_insecure_skip_verify
|
||||||
|
}
|
||||||
|
}
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
firewall = {
|
||||||
|
allowedTCPPorts = [
|
||||||
|
service.ports.port0
|
||||||
|
service.ports.port1
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
20
modules/nixos/services/caddy/caddy1/default.nix
Executable file
20
modules/nixos/services/caddy/caddy1/default.nix
Executable file
|
|
@ -0,0 +1,20 @@
|
||||||
|
{ flake, ... }:
|
||||||
|
let
|
||||||
|
inherit (flake.config.services) instances;
|
||||||
|
|
||||||
|
service = instances.caddy;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
services.caddy = {
|
||||||
|
enable = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
networking = {
|
||||||
|
firewall = {
|
||||||
|
allowedTCPPorts = [
|
||||||
|
service.ports.port0
|
||||||
|
service.ports.port1
|
||||||
|
];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
@ -1,20 +1,11 @@
|
||||||
{ flake, ... }:
|
|
||||||
let
|
let
|
||||||
inherit (flake.config.services) instances;
|
importList =
|
||||||
|
let
|
||||||
service = instances.caddy;
|
content = builtins.readDir ./.;
|
||||||
|
dirContent = builtins.filter (n: content.${n} == "directory") (builtins.attrNames content);
|
||||||
|
in
|
||||||
|
map (name: ./. + "/${name}") dirContent;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
services.caddy = {
|
imports = importList;
|
||||||
enable = true;
|
|
||||||
};
|
|
||||||
|
|
||||||
networking = {
|
|
||||||
firewall = {
|
|
||||||
allowedTCPPorts = [
|
|
||||||
service.ports.port0
|
|
||||||
service.ports.port1
|
|
||||||
];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -18,10 +18,11 @@ in
|
||||||
Kind = "bridge";
|
Kind = "bridge";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networks = {
|
networks = {
|
||||||
"20-lan" = {
|
"20-lan" = {
|
||||||
matchConfig.Name = [
|
matchConfig.Name = [
|
||||||
"enp3s0"
|
"enp10s0"
|
||||||
"vm-*"
|
"vm-*"
|
||||||
];
|
];
|
||||||
networkConfig = {
|
networkConfig = {
|
||||||
|
|
@ -31,7 +32,7 @@ in
|
||||||
"30-br-vms" = {
|
"30-br-vms" = {
|
||||||
matchConfig.Name = "br-vms";
|
matchConfig.Name = "br-vms";
|
||||||
networkConfig = {
|
networkConfig = {
|
||||||
Address = "192.168.50.245/24";
|
Address = "192.168.50.240/24";
|
||||||
Gateway = "192.168.50.1";
|
Gateway = "192.168.50.1";
|
||||||
DNS = [ "192.168.50.1" ];
|
DNS = [ "192.168.50.1" ];
|
||||||
};
|
};
|
||||||
|
|
@ -39,6 +40,7 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
hostName = ceres.name;
|
hostName = ceres.name;
|
||||||
networkmanager.enable = false;
|
networkmanager.enable = false;
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
{
|
{
|
||||||
lib,
|
|
||||||
flake,
|
flake,
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
|
|
@ -7,9 +6,7 @@ let
|
||||||
inherit (flake.config.machines.devices) eris;
|
inherit (flake.config.machines.devices) eris;
|
||||||
in
|
in
|
||||||
{
|
{
|
||||||
|
|
||||||
microvm.host.enable = true;
|
microvm.host.enable = true;
|
||||||
|
|
||||||
systemd.network = {
|
systemd.network = {
|
||||||
enable = true;
|
enable = true;
|
||||||
netdevs."10-br-vms" = {
|
netdevs."10-br-vms" = {
|
||||||
|
|
@ -18,13 +15,15 @@ in
|
||||||
Kind = "bridge";
|
Kind = "bridge";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networks = {
|
networks = {
|
||||||
"20-lan" = {
|
"20-enp3s0" = {
|
||||||
matchConfig.Name = [
|
matchConfig.Name = "enp3s0";
|
||||||
"enp10s0"
|
networkConfig = {
|
||||||
"vm-*"
|
Bridge = "br-vms";
|
||||||
];
|
};
|
||||||
|
};
|
||||||
|
"20-vm" = {
|
||||||
|
matchConfig.Name = "vm-*";
|
||||||
networkConfig = {
|
networkConfig = {
|
||||||
Bridge = "br-vms";
|
Bridge = "br-vms";
|
||||||
};
|
};
|
||||||
|
|
@ -40,12 +39,11 @@ in
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
networking = {
|
networking = {
|
||||||
hostName = eris.name;
|
hostName = eris.name;
|
||||||
networkmanager.enable = true;
|
networkmanager.enable = false;
|
||||||
nftables.enable = true;
|
nftables.enable = true;
|
||||||
useDHCP = lib.mkDefault true;
|
useDHCP = false;
|
||||||
firewall = {
|
firewall = {
|
||||||
enable = true;
|
enable = true;
|
||||||
allowedTCPPorts = [
|
allowedTCPPorts = [
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue