1

Move container config to nixinator config

This commit is contained in:
2023-05-01 19:15:30 +02:00
parent 3e2b439fef
commit d0f1008b33
2 changed files with 121 additions and 80 deletions

View File

@ -228,6 +228,7 @@
# 8096 # Jellyfin
# 8097 # Emby
# 8123 # Home-Assistant
# 8989 # Sonarr
# 32400 # Plex
];
allowedTCPPortRanges = [];
@ -576,87 +577,7 @@
# extraPackages = with pkgs; [];
};
# TODO: This (or even single containers) should have their own system modules
oci-containers.backend = "podman"; # "docker" or "podman"
oci-containers.containers = {
jellyfin = {
image = "linuxserver/jellyfin";
autoStart = false;
ports = [
"8096:8096/tcp"
];
volumes = [
"jellyfin-cache:/cache:Z"
"jellyfin-config:/config:Z"
"/home/christoph/Videos/Movies:/media/Movies:ro"
"/home/christoph/Videos/Photos:/media/Photos:ro"
# "/home/christoph/Music/Spotify:/media/Music:ro"
];
};
picard = {
image = "mikenye/picard";
autoStart = false;
ports = [
"5800:5800"
];
volumes = [
"picard-config:/config:Z"
"/home/christoph/Music/Spotify:/storage:rw,private"
];
};
homeassistant = {
image = "homeassistant/home-assistant";
autoStart = false;
ports = [
"8123:8123"
];
volumes = [
"homeassistant-config:/config:Z"
];
};
# plex = {
# image = "linuxserver/plex";
# autoStart = false;
# ports = [
# "32400:32400/tcp"
# ];
# volumes = [
# "plex-config:/config:Z"
# "plex-transcode:/transcode:Z"
# "/home/christoph/Videos/Movies:/data/Movies:ro"
# "/home/christoph/Music/Spotify:/data/Music:ro"
# ];
# };
# emby = {
# image = "linuxserver/emby";
# autoStart = false;
# ports = [
# # Host port 8096 already used by Jellyfin
# "8097:8096"
# ];
# volumes = [
# "emby-config:/config:Z"
# "/home/christoph/Videos/Movies:/data/movies:ro"
# "/home/christoph/Videos/Pictures:/data/pictures:ro"
# "/home/christoph/Music/Spotify:/data/music:ro"
# ];
# };
};
libvirtd.enable = true;
# NOTE: Pretty unusable as NVidia hardware acceleration is not supported...

View File

@ -64,4 +64,124 @@
};
};
};
# TODO: System module for these
virtualisation.oci-containers.containers = {
jellyfin = {
image = "linuxserver/jellyfin";
autoStart = false;
ports = [
"8096:8096/tcp"
];
volumes = [
"jellyfin-cache:/cache:Z"
"jellyfin-config:/config:Z"
"/home/christoph/Videos/Movies:/media/Movies:ro"
"/home/christoph/Videos/Photos:/media/Photos:ro"
"/home/christoph/Videos/Shows:/media/Shows:ro"
# "/home/christoph/Music/Spotify:/media/Music:ro"
];
};
sonarr = {
image = "linuxserver/sonarr";
autoStart = false;
# TODO: When running through the namespace, sonarr can't reach the indexer/downloader
extraOptions = [
# "--network=ns:/var/run/netns/vpn"
];
ports = [
"8989:8989"
];
volumes = [
"sonarr-config:/config:Z"
"/home/christoph/Videos/Shows:/tv"
"/home/christoph/Videos/SabNzbd:/downloads"
];
};
sabnzbd = {
image = "linuxserver/sabnzbd";
autoStart = false;
extraOptions = [
# "--network=ns:/var/run/netns/vpn"
];
ports = [
"8080:8080"
];
volumes = [
"sabnzbd-config:/config:Z"
"/home/christoph/Videos/SabNzbd:/downloads"
"/home/christoph/Videos/.sabnzbd:/incomplete-downloads"
];
};
picard = {
image = "mikenye/picard";
autoStart = false;
ports = [
"5800:5800"
];
volumes = [
"picard-config:/config:Z"
"/home/christoph/Music/Spotify:/storage:rw,private"
];
};
homeassistant = {
image = "homeassistant/home-assistant";
autoStart = false;
ports = [
"8123:8123"
];
volumes = [
"homeassistant-config:/config:Z"
];
};
# plex = {
# image = "linuxserver/plex";
# autoStart = false;
# ports = [
# "32400:32400/tcp"
# ];
# volumes = [
# "plex-config:/config:Z"
# "plex-transcode:/transcode:Z"
# "/home/christoph/Videos/Movies:/data/Movies:ro"
# "/home/christoph/Music/Spotify:/data/Music:ro"
# ];
# };
# emby = {
# image = "linuxserver/emby";
# autoStart = false;
# ports = [
# # Host port 8096 already used by Jellyfin
# "8097:8096"
# ];
# volumes = [
# "emby-config:/config:Z"
# "/home/christoph/Videos/Movies:/data/movies:ro"
# "/home/christoph/Videos/Pictures:/data/pictures:ro"
# "/home/christoph/Music/Spotify:/data/music:ro"
# ];
# };
};
}