bicep/{postgres,mysql}: bindmount data storage with noatime

This commit is contained in:
h7x4
2026-07-21 21:32:58 +09:00
parent 9a837d210d
commit 4ed1668ac5
2 changed files with 27 additions and 0 deletions
+13
View File
@@ -54,6 +54,18 @@ in
mode = "0700"; mode = "0700";
}; };
fileSystems.${dataDir} = lib.mkIf cfg.enable {
device = dataDir;
fsType = "none";
options = [
"bind"
"noatime"
"noauto"
"x-systemd.requires=systemd-tmpfiles-setup.service"
"x-systemd.requires=systemd-tmpfiles-resetup.service"
];
};
systemd.services.mysql = lib.mkIf cfg.enable { systemd.services.mysql = lib.mkIf cfg.enable {
after = [ after = [
"systemd-tmpfiles-setup.service" "systemd-tmpfiles-setup.service"
@@ -61,6 +73,7 @@ in
]; ];
serviceConfig = { serviceConfig = {
RequiresMountsFor = [ dataDir ];
BindPaths = [ "${dataDir}:${cfg.dataDir}" ]; BindPaths = [ "${dataDir}:${cfg.dataDir}" ];
LogsDirectory = "mysql"; LogsDirectory = "mysql";
@@ -99,6 +99,18 @@ in
mode = "0700"; mode = "0700";
}; };
fileSystems."/data/postgresql" = lib.mkIf cfg.enable {
device = "/data/postgresql";
fsType = "none";
options = [
"bind"
"noatime"
"noauto"
"x-systemd.requires=systemd-tmpfiles-setup.service"
"x-systemd.requires=systemd-tmpfiles-resetup.service"
];
};
systemd.services.postgresql-setup = lib.mkIf cfg.enable { systemd.services.postgresql-setup = lib.mkIf cfg.enable {
after = [ after = [
"systemd-tmpfiles-setup.service" "systemd-tmpfiles-setup.service"
@@ -110,6 +122,7 @@ in
"key:/etc/certs/postgres.key" "key:/etc/certs/postgres.key"
]; ];
RequiresMountsFor = [ "/data/postgresql" ];
BindPaths = [ "/data/postgresql:/var/lib/postgresql" ]; BindPaths = [ "/data/postgresql:/var/lib/postgresql" ];
}; };
}; };
@@ -125,6 +138,7 @@ in
"key:/etc/certs/postgres.key" "key:/etc/certs/postgres.key"
]; ];
RequiresMountsFor = [ "/data/postgresql" ];
BindPaths = [ "/data/postgresql:/var/lib/postgresql" ]; BindPaths = [ "/data/postgresql:/var/lib/postgresql" ];
}; };
}; };