Move wordpress to NFS.
This removes the need for the syncthing and rysnc plumbing.
This commit is contained in:
@@ -1,11 +1,10 @@
|
||||
{ pkgs, ... }:
|
||||
{
|
||||
# Compute node: Cluster node with Nomad, GlusterFS server, and Syncthing
|
||||
# Compute node: Cluster node with Nomad and GlusterFS server
|
||||
# Used by: c1, c2, c3
|
||||
imports = [
|
||||
./cluster-node.nix
|
||||
./glusterfs.nix
|
||||
./nomad.nix
|
||||
./syncthing-data.nix
|
||||
];
|
||||
}
|
||||
|
||||
@@ -1,53 +0,0 @@
|
||||
{
|
||||
# TODO: when deploying this to a new machine for the first time, first
|
||||
# comment this out to get /data/sync created with the right owner and
|
||||
# permissions. then, do it again with persistence enabled.
|
||||
# This could list the owner user but I'm not sure if it's already created at
|
||||
# the time impermanence setup runs.
|
||||
# Note: chown syncthing:syncthing /data/sync && chmod 700 /data/sync also seems to work
|
||||
environment.persistence."/persist".directories = [ "/data/sync" ];
|
||||
|
||||
services.syncthing = {
|
||||
enable = true;
|
||||
dataDir = "/data/sync";
|
||||
openDefaultPorts = true;
|
||||
#guiAddress = "0.0.0.0:8384";
|
||||
overrideDevices = true;
|
||||
overrideFolders = true;
|
||||
settings = {
|
||||
devices = {
|
||||
"c1" = {
|
||||
id = "XJECP3R-AZHCAYX-UIQKHIT-AHBK5UM-KM7T4OV-B7SEUCW-ZE2UFPG-7BNAIQZ";
|
||||
};
|
||||
"c2" = {
|
||||
id = "II4XUXQ-7WCH3SB-FU655O7-NI6DYYW-GQCJS6J-K7USRC2-XLM5J5W-6ZCWPQU";
|
||||
};
|
||||
"c3" = {
|
||||
id = "D3C3YII-A3QGUNF-LHOGZNX-GJ4ZF3X-VVLMNY5-BBKF3BO-KNHKJMD-EA5QYQJ";
|
||||
};
|
||||
"zippy" = {
|
||||
id = "WXDYZWN-JG2OBQH-CC42RMM-LPJGTS6-Y2BV37J-TYSLHL4-VHGYL5M-URI42QJ";
|
||||
};
|
||||
};
|
||||
folders = {
|
||||
"wordpress" = {
|
||||
path = "/data/sync/wordpress";
|
||||
devices = [
|
||||
"c1"
|
||||
"c2"
|
||||
"c3"
|
||||
"zippy"
|
||||
];
|
||||
ignorePerms = false;
|
||||
versioning = {
|
||||
type = "staggered";
|
||||
params = {
|
||||
cleanInterval = "3600";
|
||||
maxAge = "15768000";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
@@ -1,30 +0,0 @@
|
||||
job "wordpress-backup" {
|
||||
datacenters = ["alo"]
|
||||
type = "batch"
|
||||
|
||||
periodic {
|
||||
crons = ["*/5 * * * * *"]
|
||||
prohibit_overlap = true
|
||||
}
|
||||
|
||||
group "cron" {
|
||||
task "rsync" {
|
||||
driver = "raw_exec"
|
||||
|
||||
config {
|
||||
command = "/bin/sh"
|
||||
args = [ "local/script.sh" ]
|
||||
}
|
||||
|
||||
template {
|
||||
destination = "local/script.sh"
|
||||
data = <<EOH
|
||||
set -e
|
||||
/run/current-system/sw/bin/rsync -a /data/sync/wordpress/ /data/compute/appdata/wordpress/ && \
|
||||
echo "last_success $(date +%s)" | \
|
||||
/run/current-system/sw/bin/curl --data-binary @- http://pushgateway.service.consul:9091/metrics/job/wordpress_backup
|
||||
EOH
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -20,7 +20,7 @@ job "wordpress" {
|
||||
image = "gitea.v.paler.net/ppetru/wordpress"
|
||||
ports = ["http"]
|
||||
volumes = [
|
||||
"/data/sync/wordpress:/var/www/html",
|
||||
"/data/services/wordpress:/var/www/html",
|
||||
"local/php-custom.ini:/usr/local/etc/php/conf.d/php-custom.ini",
|
||||
]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user