add some new services to orbi
This commit is contained in:
parent
c101339245
commit
26267569eb
4 changed files with 115 additions and 9 deletions
|
@ -13,6 +13,8 @@
|
||||||
./service-photoprism.nix
|
./service-photoprism.nix
|
||||||
./service-taskserver.nix
|
./service-taskserver.nix
|
||||||
./service-vaultwarden.nix
|
./service-vaultwarden.nix
|
||||||
|
./service-surrealdb.nix
|
||||||
|
./service-vikunja.nix
|
||||||
|
|
||||||
./nginx-ingolf-wagner-de.nix
|
./nginx-ingolf-wagner-de.nix
|
||||||
./nginx-wkd.nix
|
./nginx-wkd.nix
|
||||||
|
|
|
@ -108,8 +108,8 @@ in
|
||||||
compression = "lz4";
|
compression = "lz4";
|
||||||
"com.sun:auto-snapshot:hourly" = toString true;
|
"com.sun:auto-snapshot:hourly" = toString true;
|
||||||
"com.sun:auto-snapshot:daily" = toString true;
|
"com.sun:auto-snapshot:daily" = toString true;
|
||||||
#"com.sun:auto-snapshot:weekly" = false;
|
# "com.sun:auto-snapshot:weekly" = toString true;
|
||||||
#"com.sun:auto-snapshot:monthly" = false;
|
# "com.sun:auto-snapshot:monthly" = toString true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
"matrix-terranix" = {
|
"matrix-terranix" = {
|
||||||
|
@ -120,8 +120,32 @@ in
|
||||||
compression = "lz4";
|
compression = "lz4";
|
||||||
"com.sun:auto-snapshot:hourly" = toString true;
|
"com.sun:auto-snapshot:hourly" = toString true;
|
||||||
"com.sun:auto-snapshot:daily" = toString true;
|
"com.sun:auto-snapshot:daily" = toString true;
|
||||||
#"com.sun:auto-snapshot:weekly" = false;
|
# "com.sun:auto-snapshot:weekly" = toString true;
|
||||||
#"com.sun:auto-snapshot:monthly" = false;
|
# "com.sun:auto-snapshot:monthly" = toString true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"surrealdb" = {
|
||||||
|
type = "zfs_fs";
|
||||||
|
mountpoint = "/var/lib/nixos-containers/surrealdb";
|
||||||
|
options = {
|
||||||
|
mountpoint = "legacy";
|
||||||
|
compression = "lz4";
|
||||||
|
"com.sun:auto-snapshot:hourly" = toString true;
|
||||||
|
#"com.sun:auto-snapshot:daily" = toString true;
|
||||||
|
#"com.sun:auto-snapshot:weekly" = toString true;
|
||||||
|
#"com.sun:auto-snapshot:monthly" = toString true;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"vikunja" = {
|
||||||
|
type = "zfs_fs";
|
||||||
|
mountpoint = "/var/lib/nixos-containers/vikunja";
|
||||||
|
options = {
|
||||||
|
mountpoint = "legacy";
|
||||||
|
compression = "lz4";
|
||||||
|
"com.sun:auto-snapshot:hourly" = toString true;
|
||||||
|
"com.sun:auto-snapshot:daily" = toString true;
|
||||||
|
#"com.sun:auto-snapshot:weekly" = toString true;
|
||||||
|
#"com.sun:auto-snapshot:monthly" = toString true;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -141,9 +165,6 @@ in
|
||||||
options = {
|
options = {
|
||||||
mountpoint = "legacy";
|
mountpoint = "legacy";
|
||||||
compression = "lz4";
|
compression = "lz4";
|
||||||
#"com.sun:auto-snapshot:daily" = false;
|
|
||||||
#"com.sun:auto-snapshot:weekly" = false;
|
|
||||||
#"com.sun:auto-snapshot:monthly" = false;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
photoprism = {
|
photoprism = {
|
||||||
|
@ -154,8 +175,6 @@ in
|
||||||
compression = "lz4";
|
compression = "lz4";
|
||||||
"com.sun:auto-snapshot:hourly" = toString true;
|
"com.sun:auto-snapshot:hourly" = toString true;
|
||||||
"com.sun:auto-snapshot:daily" = toString true;
|
"com.sun:auto-snapshot:daily" = toString true;
|
||||||
#"com.sun:auto-snapshot:weekly" = false;
|
|
||||||
#"com.sun:auto-snapshot:monthly" = false;
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
24
machines/orbi/service-surrealdb.nix
Normal file
24
machines/orbi/service-surrealdb.nix
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
{
|
||||||
|
|
||||||
|
containers.surrealdb = {
|
||||||
|
privateNetwork = false;
|
||||||
|
autoStart = true;
|
||||||
|
|
||||||
|
config = { config, lib, ... }: {
|
||||||
|
nixpkgs.pkgs = pkgs;
|
||||||
|
imports = [ ../../components/monitor/container.nix ];
|
||||||
|
system.stateVersion = "24.05";
|
||||||
|
|
||||||
|
# Photoprism
|
||||||
|
# ----------
|
||||||
|
services.surrealdb = {
|
||||||
|
enable = true;
|
||||||
|
host = "0.0.0.0";
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
61
machines/orbi/service-vikunja.nix
Normal file
61
machines/orbi/service-vikunja.nix
Normal file
|
@ -0,0 +1,61 @@
|
||||||
|
{ config, pkgs, lib, ... }:
|
||||||
|
let
|
||||||
|
vikunjaPort = 3456;
|
||||||
|
mysqlPort = 3337;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
|
||||||
|
networking.firewall.interfaces.wg0.allowedTCPPorts = [ vikunjaPort ];
|
||||||
|
|
||||||
|
containers.vikunja = {
|
||||||
|
privateNetwork = false;
|
||||||
|
autoStart = true;
|
||||||
|
|
||||||
|
config = { config, lib, ... }: {
|
||||||
|
nixpkgs.pkgs = pkgs;
|
||||||
|
imports = [ ../../components/monitor/container.nix ];
|
||||||
|
system.stateVersion = "24.05";
|
||||||
|
|
||||||
|
# Vikunja
|
||||||
|
# ----------
|
||||||
|
services.vikunja = {
|
||||||
|
enable = true;
|
||||||
|
port = vikunjaPort;
|
||||||
|
frontendScheme = "http";
|
||||||
|
frontendHostname = "vikunja.ingolf-wagner.de";
|
||||||
|
database.type = "sqlite";
|
||||||
|
#database = {
|
||||||
|
# type = "mysql";
|
||||||
|
# host = "localhost:${toString mysqlPort}";
|
||||||
|
# user = "vikunja";
|
||||||
|
#};
|
||||||
|
};
|
||||||
|
|
||||||
|
# MySQL Database
|
||||||
|
# --------------
|
||||||
|
services.mysql = {
|
||||||
|
enable = false;
|
||||||
|
package = pkgs.mariadb;
|
||||||
|
settings.mysqld.port = mysqlPort;
|
||||||
|
ensureDatabases = [ "vikunja" ];
|
||||||
|
ensureUsers = [{
|
||||||
|
name = "vikunja";
|
||||||
|
ensurePermissions = {
|
||||||
|
"vikunja.*" = "ALL PRIVILEGES";
|
||||||
|
};
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
|
||||||
|
# Backup Database
|
||||||
|
# ---------------
|
||||||
|
services.mysqlBackup = {
|
||||||
|
enable = false;
|
||||||
|
databases = config.services.mysql.ensureDatabases;
|
||||||
|
singleTransaction = true;
|
||||||
|
};
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in a new issue