Used agenix to manage secrets, 4 services up, ssh
This commit is contained in:
36
modules/nixos/services/systemd/passwordmanager.nix
Normal file
36
modules/nixos/services/systemd/passwordmanager.nix
Normal file
@@ -0,0 +1,36 @@
|
||||
{ config, pkgs, self, ... }:
|
||||
|
||||
let
|
||||
passwordmanager_compose_dir = pkgs.stdenv.mkDerivation {
|
||||
name = "passwordmanager_compose_dir";
|
||||
src = self + "/assets/compose/passwordmanager";
|
||||
dontUnpack = true;
|
||||
installPhase = ''
|
||||
mkdir -p $out
|
||||
cp -r $src/* $out/
|
||||
'';
|
||||
};
|
||||
in
|
||||
{
|
||||
systemd.services.passwordmanager_stack = {
|
||||
description = "Bitwarden via Docker Compose";
|
||||
after = [ "network-online.target" "docker.service" ];
|
||||
wants = [ "network-online.target" "docker.service" ];
|
||||
serviceConfig = {
|
||||
WorkingDirectory = "${passwordmanager_compose_dir}";
|
||||
|
||||
# Stop left over container by the same name
|
||||
ExecStartPre = "${pkgs.bash}/bin/bash -c '${pkgs.docker-compose}/bin/docker-compose down || true'";
|
||||
|
||||
# Démarrer les conteneurs avec Docker Compose
|
||||
ExecStart = "${pkgs.docker-compose}/bin/docker-compose up -d";
|
||||
|
||||
# Arrêter et supprimer les conteneurs à l’arrêt
|
||||
ExecStop = "${pkgs.docker-compose}/bin/docker-compose down";
|
||||
|
||||
RemainAfterExit = true;
|
||||
TimeoutStartSec = 0;
|
||||
};
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user