Fix the volume issue.
This commit is contained in:
parent
e7722f83fd
commit
3804745fd1
2 changed files with 81 additions and 30 deletions
|
|
@ -1,8 +1,10 @@
|
|||
# Auto-generated by compose2nix.
|
||||
|
||||
{ pkgs, lib, config, ... }:
|
||||
|
||||
{
|
||||
pkgs,
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: {
|
||||
# Runtime
|
||||
virtualisation.podman = {
|
||||
enable = true;
|
||||
|
|
@ -12,9 +14,12 @@
|
|||
|
||||
# Enable container name DNS for all Podman networks.
|
||||
networking.firewall.interfaces = let
|
||||
matchAll = if !config.networking.nftables.enable then "podman+" else "podman*";
|
||||
matchAll =
|
||||
if !config.networking.nftables.enable
|
||||
then "podman+"
|
||||
else "podman*";
|
||||
in {
|
||||
"${matchAll}".allowedUDPPorts = [ 53 ];
|
||||
"${matchAll}".allowedUDPPorts = [53];
|
||||
};
|
||||
|
||||
virtualisation.oci-containers.backend = "podman";
|
||||
|
|
@ -36,9 +41,9 @@
|
|||
config.sops.secrets."songsheet/database/DATABASE_URL".path
|
||||
];
|
||||
volumes = [
|
||||
"nix-system-configs/modules/songsheet/wavelog/db:/var/www/html/var/db:rw"
|
||||
"nix-system-configs/modules/songsheet/wavelog/public_media:/var/www/html/public/media:rw"
|
||||
"nix-system-configs/modules/songsheet/wavelog/uploads:/var/www/html/uploads:rw"
|
||||
"wavelog_partdb_db_f:/var/www/html/var/db:rw"
|
||||
"wavelog_partdb_media_f:/var/www/html/public/media:rw"
|
||||
"wavelog_partdb_uploads_f:/var/www/html/uploads:rw"
|
||||
];
|
||||
ports = [
|
||||
"8087:80/tcp"
|
||||
|
|
@ -58,9 +63,15 @@
|
|||
};
|
||||
after = [
|
||||
"podman-network-wavelog_default.service"
|
||||
"podman-volume-wavelog_partdb_db_f.service"
|
||||
"podman-volume-wavelog_partdb_media_f.service"
|
||||
"podman-volume-wavelog_partdb_uploads_f.service"
|
||||
];
|
||||
requires = [
|
||||
"podman-network-wavelog_default.service"
|
||||
"podman-volume-wavelog_partdb_db_f.service"
|
||||
"podman-volume-wavelog_partdb_media_f.service"
|
||||
"podman-volume-wavelog_partdb_uploads_f.service"
|
||||
];
|
||||
partOf = [
|
||||
"podman-compose-wavelog-root.target"
|
||||
|
|
@ -153,7 +164,7 @@
|
|||
|
||||
# Networks
|
||||
systemd.services."podman-network-wavelog_default" = {
|
||||
path = [ pkgs.podman ];
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -162,13 +173,49 @@
|
|||
script = ''
|
||||
podman network inspect wavelog_default || podman network create wavelog_default
|
||||
'';
|
||||
partOf = [ "podman-compose-wavelog-root.target" ];
|
||||
wantedBy = [ "podman-compose-wavelog-root.target" ];
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
|
||||
# Volumes
|
||||
systemd.services."podman-volume-wavelog_partdb_db_f" = {
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
podman volume inspect wavelog_partdb_db_f || podman volume create wavelog_partdb_db_f
|
||||
'';
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_partdb_media_f" = {
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
podman volume inspect wavelog_partdb_media_f || podman volume create wavelog_partdb_media_f
|
||||
'';
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_partdb_uploads_f" = {
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
};
|
||||
script = ''
|
||||
podman volume inspect wavelog_partdb_uploads_f || podman volume create wavelog_partdb_uploads_f
|
||||
'';
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_wavelog-config" = {
|
||||
path = [ pkgs.podman ];
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -176,11 +223,11 @@
|
|||
script = ''
|
||||
podman volume inspect wavelog_wavelog-config || podman volume create wavelog_wavelog-config
|
||||
'';
|
||||
partOf = [ "podman-compose-wavelog-root.target" ];
|
||||
wantedBy = [ "podman-compose-wavelog-root.target" ];
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_wavelog-dbdata" = {
|
||||
path = [ pkgs.podman ];
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -188,11 +235,11 @@
|
|||
script = ''
|
||||
podman volume inspect wavelog_wavelog-dbdata || podman volume create wavelog_wavelog-dbdata
|
||||
'';
|
||||
partOf = [ "podman-compose-wavelog-root.target" ];
|
||||
wantedBy = [ "podman-compose-wavelog-root.target" ];
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_wavelog-uploads" = {
|
||||
path = [ pkgs.podman ];
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -200,11 +247,11 @@
|
|||
script = ''
|
||||
podman volume inspect wavelog_wavelog-uploads || podman volume create wavelog_wavelog-uploads
|
||||
'';
|
||||
partOf = [ "podman-compose-wavelog-root.target" ];
|
||||
wantedBy = [ "podman-compose-wavelog-root.target" ];
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
systemd.services."podman-volume-wavelog_wavelog-userdata" = {
|
||||
path = [ pkgs.podman ];
|
||||
path = [pkgs.podman];
|
||||
serviceConfig = {
|
||||
Type = "oneshot";
|
||||
RemainAfterExit = true;
|
||||
|
|
@ -212,8 +259,8 @@
|
|||
script = ''
|
||||
podman volume inspect wavelog_wavelog-userdata || podman volume create wavelog_wavelog-userdata
|
||||
'';
|
||||
partOf = [ "podman-compose-wavelog-root.target" ];
|
||||
wantedBy = [ "podman-compose-wavelog-root.target" ];
|
||||
partOf = ["podman-compose-wavelog-root.target"];
|
||||
wantedBy = ["podman-compose-wavelog-root.target"];
|
||||
};
|
||||
|
||||
# Root service
|
||||
|
|
@ -223,6 +270,6 @@
|
|||
unitConfig = {
|
||||
Description = "Root target generated by compose2nix.";
|
||||
};
|
||||
wantedBy = [ "multi-user.target" ];
|
||||
wantedBy = ["multi-user.target"];
|
||||
};
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue