Skip to content

Commit d95cd17

Browse files
committed
feat: add caddy as reverse proxy
Signed-off-by: Sefa Eyeoglu <[email protected]>
1 parent 39c0de1 commit d95cd17

File tree

4 files changed

+31
-0
lines changed

4 files changed

+31
-0
lines changed

machines/andesite/caddy.nix

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
{ ... }:
2+
{
3+
services.caddy = {
4+
enable = true;
5+
};
6+
7+
networking.firewall = {
8+
allowedTCPPorts = [
9+
80
10+
443
11+
];
12+
allowedUDPPorts = [ 443 ];
13+
};
14+
}

machines/andesite/configuration.nix

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@
1515
inputs.agenix.nixosModules.age
1616

1717
./blockgame-meta.nix
18+
./caddy.nix
1819
./comin.nix
1920
./disks.nix
2021
./letterbox.nix

machines/andesite/prometheus/default.nix

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
{ config, ... }:
2+
let
3+
fqdn = "prometheus.andesite.prismlauncher.org";
4+
in
25
{
36
imports = [
47
./exporters/node.nix
@@ -14,6 +17,7 @@
1417
];
1518

1619
globalConfig.scrape_interval = "15s";
20+
webExternalUrl = "https://${fqdn}/";
1721

1822
alertmanagers = [
1923
{
@@ -55,6 +59,10 @@
5559
config.services.prometheus.port
5660
];
5761

62+
services.caddy.virtualHosts.${fqdn}.extraConfig = ''
63+
reverse_proxy localhost:${toString config.services.prometheus.port}
64+
'';
65+
5866
environment.persistence."/nix/persistence".directories = [
5967
"/var/lib/prometheus2"
6068
];

main.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,14 @@ resource "cloudflare_dns_record" "andesite6" {
4242
ttl = 1
4343
}
4444

45+
resource "cloudflare_dns_record" "prometheus_andesite" {
46+
zone_id = var.zone_id
47+
name = "prometheus.andesite.prismlauncher.org"
48+
content = "andesite.prismlauncher.org"
49+
type = "CNAME"
50+
ttl = 1
51+
}
52+
4553
resource "local_file" "andesite-facts" {
4654
content = jsonencode({
4755
"hostname" = hcloud_server.andesite.name

0 commit comments

Comments
 (0)