eve-psr-nix0/nix/application/containers.nix

139 lines
4.8 KiB
Nix
Raw Permalink Normal View History

{ config, lib, pkgs, ... }:
2023-06-26 16:19:14 -05:00
{
virtualisation.oci-containers = {
containers = {
2024-01-10 12:28:37 -06:00
atuin = {
image = "ghcr.io/atuinsh/atuin:latest";
ports = [ "8888:8888" ];
cmd = [ "server" "start" ];
volumes = [
"/home/sezycei/srv/containerdata/atuin/config:/config"
];
environmentFiles =
[ config.age.secrets.atuin-env.path ];
};
atuin-sql = {
image = "postgres:14";
volumes = [ "/home/sezycei/srv/containerdata/atuin/database:/var/lib/postgresql/data/" ];
ports = [ "9123:5432" ];
environmentFiles =
[ config.age.secrets.atuin-env.path ];
};
2023-06-26 16:19:14 -05:00
jellyfin = {
image = "linuxserver/jellyfin:latest";
2023-07-01 20:43:20 -05:00
ports = [ "8096:8096" "8920:8920" ];
2023-06-26 16:19:14 -05:00
volumes = [
"/home/sezycei/srv/containerdata/jellyfin/config:/config"
"/home/torrent/data/completed:/data/unsorted"
"/home/torrent/data/TV:/data/tvshows"
"/home/torrent/data/Movies:/data/movies"
"/home/torrent/data/transcode:/data/transcode"
"/home/torrent/data/Music:/data/music"
];
environment = {
PGID = "1000";
PUID = "1000";
TZ = "America/Chicago";
UMASK_SET = "022";
};
};
2023-06-26 16:19:14 -05:00
murmur = {
image = "goofball222/murmur";
2023-07-01 20:43:20 -05:00
ports = [ "64738:64738" "64738:64738/udp" ];
2023-06-26 16:19:14 -05:00
volumes = [
2023-09-09 07:17:48 -05:00
"/home/sezycei/srv/containerdata/murmur/murmur/config:/opt/murmur/config"
"/home/sezycei/srv/containerdata/murmur/murmur/data:/opt/murmur/data"
"/home/sezycei/srv/containerdata/murmur/murmur/log:/opt/murmur/log"
2023-06-26 16:19:14 -05:00
];
environment = { };
};
2023-06-26 16:19:14 -05:00
purr = {
2024-02-24 16:58:03 -06:00
image = "docker.matri.cx/purr:latest";
2023-07-01 20:43:20 -05:00
ports = [ "5195:3000" ];
2023-06-26 16:19:14 -05:00
volumes = [
"/home/sezycei/srv/containerdata/purr/data:/app/data"
2023-06-26 16:19:14 -05:00
];
environment = {
ENVIRONMENT = "production";
APPLICATIONHOST = "localhost";
APPLICATIONPORT = "3000";
DATADIR = "/app/";
LINKLENGTH = "24";
ADMINEMAIL = "james@eversole.co";
PURRNOFILE = "true";
};
2023-06-26 16:19:14 -05:00
};
2023-06-26 16:19:14 -05:00
registry = {
2024-01-28 12:30:36 -06:00
image = "registry:2.8.3";
2023-07-01 20:43:20 -05:00
ports = [ "3001:5000" ];
2023-06-26 16:19:14 -05:00
volumes = [
"/home/sezycei/srv/containerdata/registry/data:/var/lib/registry"
"/home/sezycei/srv/containerdata/registry/certs:/certs"
"/home/sezycei/srv/containerdata/registry/auth:/auth"
2023-06-26 16:19:14 -05:00
];
environment = { };
};
2024-02-24 12:09:42 -06:00
sampu = {
2024-02-24 16:58:03 -06:00
image = "docker.matri.cx/sampu:latest";
2024-02-24 12:09:42 -06:00
ports = [ "5196:3000" ];
volumes = [
"/home/sezycei/srv/containerdata/sampu/data:/app/data"
];
environment = {
2024-02-24 17:00:24 -06:00
SAMPU_PORT = "3000";
SAMPU_TITLE = "James Eversole";
SAMPU_BASEURL = "https://eversole.co";
2024-02-24 12:09:42 -06:00
};
};
2024-01-28 12:30:36 -06:00
softserve = {
image = "charmcli/soft-serve:v0.8.1";
2024-02-08 13:05:20 -06:00
ports = [
"23231:23231"
"23232:23232"
"23233:23233"
"9418:9418"
];
2024-01-28 12:30:36 -06:00
volumes = [ "/home/sezycei/srv/containerdata/soft-serve/data:/soft-serve" ];
environment = {
SOFT_SERVE_NAME = "git.eversole.co";
SOFT_SERVE_HTTP_PUBLIC_URL = "git.eversole.co";
SOFT_SERVE_GIT_MAX_CONNECTIONS = "10";
2024-01-28 12:30:36 -06:00
SOFT_SERVE_INITIAL_ADMIN_KEYS = "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQCzsewMuoEbC0DwwNK23ZJb/ncpNtUuEgZNI2EdAsc7RnhIOhQBxj237qNMhh2mF/8hkASJZ2e4wrmNkjBM7aaz8mrcDY9rG23JMfnGiP4cU6dBC/NqHOuJypt6X28FI5I+dgw2T40sdIbkWAXOr5u5EAJcO6ROdas4zYSPHwl95s3txoGtQrQtgLHgddWMCr53n5KMwFUmqwM1ovVPZplZGaGG5m6VwBkjA0GZQPVFC+RIg6kIp9vUlsAlzPrlDqhTR32jazvaONNBsyUTuE+CJjitU4xoBs67jIFTcesMiFdThKt2HTq1AhXqiUgIfKaDvHfjzWLT8GihxDLpTBxS8G1qWlvkSja09nB/Pn1Y6XqgczM/y51OloowbvuskDZleFoapSYmJdq+rqSCoJ3JCykNGOcpdSBCucnDgR6CHEUPkJJoR0iCrK0ACEIxWhFuSterh/P8gxcH3e2PdcgxO8SfSBagdizOnDsWOw1SR8w6wVOLRrczMyx3hDXoabs= james@eversole.co";
};
};
2023-06-26 16:19:14 -05:00
transmission = {
image = "haugene/transmission-openvpn:5.3.1";
2023-07-01 20:43:20 -05:00
ports = [ "9091:9091" ];
2023-06-26 16:19:14 -05:00
volumes = [
"/home/sezycei/srv/scripts/transmission/settings.json:/etc/transmission-daemon/settings.json"
"/etc/localtime:/etc/localtime:ro"
"/home/torrent/data:/data"
"/home/sezycei/srv/scripts/transmission/custom-data:/etc/openvpn/custom"
2023-06-26 16:19:14 -05:00
];
2023-06-26 16:30:36 -05:00
environmentFiles =
[ config.age.secrets.transmission-env.path ];
2023-06-26 16:19:14 -05:00
extraOptions = [ "--cap-add=NET_ADMIN" "--privileged" ];
};
vaultwarden = {
image = "vaultwarden/server:1.32.7";
ports = [ "40080:80" ];
volumes = [
"/home/sezycei/srv/containerdata/bitwarden/data:/data"
];
environmentFiles = [ config.age.secrets.bitwarden-env.path ];
};
2023-06-26 16:19:14 -05:00
};
};
}