61 lines
1.1 KiB
HCL
61 lines
1.1 KiB
HCL
job "photoprism" {
|
|
schedule = "10 * * * *"
|
|
|
|
config {
|
|
repo = "s3://backups-minio.agnosticfront.thefij:8443/nomad/photoprism"
|
|
passphrase = env("BACKUP_PASSPHRASE")
|
|
|
|
options {
|
|
InsecureTls = true
|
|
}
|
|
}
|
|
|
|
task "Create local photoprism dir" {
|
|
pre_script {
|
|
on_backup = "mkdir -p /local/photoprism"
|
|
}
|
|
}
|
|
|
|
task "Dump database" {
|
|
mysql "Dump database" {
|
|
hostname = env("MYSQL_HOST")
|
|
port = env("MYSQL_PORT")
|
|
database = "photoprism"
|
|
username = env("MYSQL_USER")
|
|
password = env("MYSQL_PASSWORD")
|
|
no_tablespaces = true
|
|
dump_to = "/local/photoprism/dump.sql"
|
|
}
|
|
}
|
|
|
|
backup {
|
|
paths = [
|
|
"/local/photoprism",
|
|
"/data/nas-container/photoprism",
|
|
]
|
|
|
|
backup_opts {
|
|
Host = "nomad"
|
|
Exclude = [
|
|
"/data/nas-container/photoprism/cache",
|
|
]
|
|
}
|
|
|
|
restore_opts {
|
|
Host = ["nomad"]
|
|
# Because path is absolute
|
|
Target = "/"
|
|
}
|
|
}
|
|
|
|
forget {
|
|
KeepLast = 2
|
|
KeepHourly = 24
|
|
KeepDaily = 30
|
|
KeepWeekly = 8
|
|
KeepMonthly = 6
|
|
KeepYearly = 2
|
|
Prune = true
|
|
}
|
|
}
|