78 lines
1.4 KiB
Nix
78 lines
1.4 KiB
Nix
{ config, pkgs, ... }:
|
|
|
|
let
|
|
workDir = "/srv/containers/jitsi";
|
|
in
|
|
{
|
|
# --- directories ---
|
|
systemd.tmpfiles.rules = [
|
|
"d ${workDir}/web 2775 root admin -"
|
|
"d ${workDir}/prosody 2775 root admin -"
|
|
"d ${workDir}/jicofo 2775 root admin -"
|
|
"d ${workDir}/jvb 2775 root admin -"
|
|
];
|
|
|
|
# --- containers ---
|
|
virtualisation.oci-containers.containers = {
|
|
|
|
jitsi-web = {
|
|
image = "docker.io/jitsi/web:stable";
|
|
autoStart = true;
|
|
|
|
ports = [
|
|
"0.0.0.0:10006:80"
|
|
];
|
|
|
|
environmentFiles = [
|
|
config.age.secrets.jitsi-env.path
|
|
];
|
|
|
|
volumes = [
|
|
"${workDir}/web:/config"
|
|
];
|
|
};
|
|
|
|
jitsi-prosody = {
|
|
image = "docker.io/jitsi/prosody:stable";
|
|
autoStart = true;
|
|
|
|
environmentFiles = [
|
|
config.age.secrets.jitsi-env.path
|
|
];
|
|
|
|
volumes = [
|
|
"${workDir}/prosody:/config"
|
|
];
|
|
};
|
|
|
|
jitsi-jicofo = {
|
|
image = "docker.io/jitsi/jicofo:stable";
|
|
autoStart = true;
|
|
|
|
environmentFiles = [
|
|
config.age.secrets.jitsi-env.path
|
|
];
|
|
|
|
volumes = [
|
|
"${workDir}/jicofo:/config"
|
|
];
|
|
};
|
|
|
|
jitsi-jvb = {
|
|
image = "docker.io/jitsi/jvb:stable";
|
|
autoStart = true;
|
|
|
|
ports = [
|
|
"10000:10000/udp" # ONLY exposed media port
|
|
];
|
|
|
|
environmentFiles = [
|
|
config.age.secrets.jitsi-env.path
|
|
];
|
|
|
|
volumes = [
|
|
"${workDir}/jvb:/config"
|
|
];
|
|
};
|
|
};
|
|
} |