nixos-config/profiles/servers/joplin-server.nix
2022-10-09 00:39:52 +03:00

39 lines
1.1 KiB
Nix

{ config, lib, pkgs, ... }: {
secrets.joplin-env = { };
secrets.joplin-db-env = { };
virtualisation.oci-containers.containers = {
joplin = {
autoStart = true;
dependsOn = [ "joplin-db" ];
environmentFiles = [ config.secrets.joplin-env.decrypted ];
extraOptions = [
"--network=joplin"
];
ports = [ "127.0.0.1:22300:22300" ];
image = "joplin:latest-dev";
volumes = [ "/srv/joplin/data:/data" ];
};
joplin-db = {
autoStart = true;
environmentFiles = [ config.secrets.joplin-db-env.decrypted ];
extraOptions = [
"--network=joplin"
];
image = "postgres:13";
volumes = [ "/srv/joplin/postgres:/var/lib/postgresql/data" ];
};
};
systemd.services.create-joplin-network = with config.virtualisation.oci-containers; {
serviceConfig.Type = "oneshot";
wantedBy = [
"${backend}-joplin.service"
"${backend}-joplin-db.service"
];
script = ''
${pkgs.docker}/bin/docker network inspect joplin || \
${pkgs.docker}/bin/docker network create -d bridge joplin
exit 0
'';
};
}