traefik and gitlab dont work

This commit is contained in:
2024-10-27 01:12:10 -05:00
parent 52a582f87f
commit 98b6f41547
5 changed files with 198 additions and 39 deletions

View File

@@ -52,18 +52,6 @@
displayManager.enable = true;
};
sysconfig = {
opts = {
sddm.enable = true;
openssh.enable = true;
pipewire.enable = true;
ags.enable = true;
hyprland.enable = true;
git.enable = true;
nh.enable = true;
steam.enable = false;
};
};
environment.sessionVariables = {
WLR_BACKENDS = "headless";
@@ -98,7 +86,16 @@
hostName = "homebox";
nameservers = [ "1.1.1.1#one.one.one.one" "1.0.0.1#one.one.one.one" ];
networkmanager.enable = true;
firewall.allowedTCPPorts = [ 22 80 443 9080 9443 ];
firewall.allowedTCPPorts = [ 22 80 443 9080 9443 8080 ];
hosts = {
"127.0.0.1" = [ "blunkall.us" "www.blunkall.us" ];
};
nftables = {};
nat = {
enable = true;
internalInterfaces = [ "ve-+" ];
externalInterface = "enp6s0";
};
};
system.stateVersion = "23.05"; # Did you read the comment?
@@ -112,9 +109,12 @@
];
};
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
};
nix = {
nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
settings = {
experimental-features = [ "nix-command" "flakes" ];
};
};
boot.initrd.postDeviceCommands = lib.mkAfter ''
mkdir /btrfs_tmp
@@ -188,6 +188,33 @@
};
};
sysconfig = {
opts = {
sddm.enable = true;
openssh.enable = true;
pipewire.enable = true;
ags.enable = true;
hyprland.enable = true;
git.enable = true;
nh.enable = true;
steam.enable = false;
virtualization = {
traefik.enable = false;
gitlab.enable = false;
};
};
};
fonts.packages = with pkgs; [ nerdfonts ];

View File

@@ -7,12 +7,18 @@
config = lib.mkIf config.sysconfig.opts.virtualization.gitlab.enable {
virtualisation.containers.gitlab = {
containers.gitlab = {
autoStart = true;
privateNetwork = true;
hostAddress = "192.168.100.10";
localAddress = "192.168.100.11";
localAddress = "192.168.100.12";
bindMounts = {
"/root/data" = {
hostPath = "/ssd1/Gitlab/data";
isReadOnly = false;
};
};
config = {
services.gitlab = {
@@ -27,6 +33,11 @@
};
};
networking.firewall.allowedTCPPorts = [ 22 80 ];
system.stateVersion = "24.05";
};
};
};

View File

@@ -7,20 +7,103 @@
config = lib.mkIf config.sysconfig.opts.virtualization.traefik.enable {
services.traefik = {
containers.traefik = {
autoStart = true;
privateNetwork = true;
hostAddress = "192.168.100.10";
localAddress = "192.168.100.11";
forwardPorts = [
{
containerPort = 80;
hostPort = 80;
}
{
containerPort = 443;
hostPort = 443;
}
{
containerPort = 9080;
hostPort = 9080;
}
{
containerPort = 9443;
hostPort = 9443;
}
{
containerPort = 8080;
hostPort = 8080;
}
];
enable = true;
staticConfigOpts = {
entryPoints = {
web = {};
websecure = {};
log = {};
certificatesResolvers
bindMounts = {
"/root/data" = {
hostPath = "/ssd1/Traefik/data";
isReadOnly = false;
};
};
dynamicConfigOpts = {};
config = {
services.traefik = {
enable = true;
dataDir = "/root/data";
staticConfigOptions = {
api = {
dashboard = true;
};
entryPoints = {
local = {
address = ":80";
http.redirections.entryPoint = {
to = "localsecure";
scheme = "https";
};
};
localsecure = {
address = ":443";
};
web = {
address = ":9080";
http.redirections.entryPoint = {
to = "websecure";
scheme = "https";
};
};
websecure = {
address = ":9443";
asDefault = true;
http.tls.certResolver = "letsencrypt";
};
log = {
level = "INFO";
filePath = "${config.services.traefik.dataDir}/traefik.log";
format = "json";
};
certificatesResolvers.cloudflare.acme = {
email = "nathanblunkall5@gmail.com";
storage = "${config.services.traefik.dataDir}/acme.json";
#httpChallenge.entryPoint = "web";
dnsChallenge = {
provider = "cloudflare";
resolvers = [ "1.1.1.1:53" "1.0.0.1:53" ];
#disablePropagationCheck = true;
};
};
};
};
dynamicConfigOptions = {};
};
networking.firewall.allowedTCPPorts = [ 80 443 9080 9443 8080];
system.stateVersion = "24.05";
};
};
};
}

View File

@@ -4,6 +4,6 @@
./ollama
./openssh
./pipewire
# ./containers
./containers
];
}