trilium: add self-hosted note-taking service
Add trilium-server on port 8787 behind Caddy reverse proxy at notes.sigkill.computer. Data stored on ZFS tank pool with serviceMountWithZpool for mount ordering.
This commit is contained in:
@@ -49,6 +49,7 @@
|
|||||||
|
|
||||||
./services/llama-cpp.nix
|
./services/llama-cpp.nix
|
||||||
./services/llama-cpp-annotations.nix
|
./services/llama-cpp-annotations.nix
|
||||||
|
./services/trilium.nix
|
||||||
|
|
||||||
./services/ups.nix
|
./services/ups.nix
|
||||||
./services/monitoring.nix
|
./services/monitoring.nix
|
||||||
|
|||||||
@@ -173,6 +173,10 @@ rec {
|
|||||||
port = 6688;
|
port = 6688;
|
||||||
proto = "tcp";
|
proto = "tcp";
|
||||||
};
|
};
|
||||||
|
trilium = {
|
||||||
|
port = 8787;
|
||||||
|
proto = "tcp";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@@ -302,6 +306,10 @@ rec {
|
|||||||
domain = "grafana.${https.domain}";
|
domain = "grafana.${https.domain}";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
trilium = {
|
||||||
|
dataDir = services_dir + "/trilium";
|
||||||
|
};
|
||||||
|
|
||||||
media = {
|
media = {
|
||||||
moviesDir = torrents_path + "/media/movies";
|
moviesDir = torrents_path + "/media/movies";
|
||||||
tvDir = torrents_path + "/media/tv";
|
tvDir = torrents_path + "/media/tv";
|
||||||
|
|||||||
26
services/trilium.nix
Normal file
26
services/trilium.nix
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
{
|
||||||
|
config,
|
||||||
|
pkgs,
|
||||||
|
service_configs,
|
||||||
|
lib,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
(lib.serviceMountWithZpool "trilium-server" service_configs.zpool_ssds [
|
||||||
|
(service_configs.services_dir + "/trilium")
|
||||||
|
])
|
||||||
|
];
|
||||||
|
|
||||||
|
services.trilium-server = {
|
||||||
|
enable = true;
|
||||||
|
port = service_configs.ports.private.trilium.port;
|
||||||
|
host = "127.0.0.1";
|
||||||
|
dataDir = service_configs.trilium.dataDir;
|
||||||
|
};
|
||||||
|
|
||||||
|
services.caddy.virtualHosts."notes.${service_configs.https.domain}".extraConfig = ''
|
||||||
|
import ${config.age.secrets.caddy_auth.path}
|
||||||
|
reverse_proxy :${toString service_configs.ports.private.trilium.port}
|
||||||
|
'';
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user