diff --git a/hosts/home-morefine/docker/backrest/docker-compose.yaml b/hosts/home-morefine/docker/backrest/docker-compose.yaml deleted file mode 100644 index 651687d..0000000 --- a/hosts/home-morefine/docker/backrest/docker-compose.yaml +++ /dev/null @@ -1,29 +0,0 @@ -services: - backrest: - image: ghcr.io/garethgeorge/backrest:latest - container_name: backrest - hostname: backrest - networks: - - caddy_internal - volumes: - - /srv/rundata/backrest/data:/data - - /srv/rundata/backrest/config:/config - - /srv/rundata/backrest/cache:/cache - - /srv/rundata/backrest/tmp:/tmp - #- /srv/rundata/backrest/rclone:/root/.config/rclone # Mount for rclone config (needed when using rclone remotes) - - /srv/rundata:/srv/rundata:ro # Mount local paths to backup - - /srv/photo:/srv/photo:ro # Mount local paths to backup - - /srv/backups/backrest:/repos # Mount local repos (optional for remote storage) - environment: - - BACKREST_DATA=/data - - BACKREST_CONFIG=/config/config.json - - XDG_CACHE_HOME=/cache - - TMPDIR=/tmp - - TZ=Europe/Minsk -# ports: -# - "9898:9898" - restart: unless-stopped - -networks: - caddy_internal: - external: true diff --git a/hosts/home-morefine/docker/caddy/Caddyfile b/hosts/home-morefine/docker/caddy/Caddyfile index 7f1625e..f9c1aac 100644 --- a/hosts/home-morefine/docker/caddy/Caddyfile +++ b/hosts/home-morefine/docker/caddy/Caddyfile @@ -10,58 +10,57 @@ (apps) { - @backrest host backrest.catmedved.com + @backrest host backrest.catmedved.com handle @backrest { - reverse_proxy http://backrest:9898 + reverse_proxy http://host.docker.internal:9898 } - - @beszel host beszel.catmedved.com + @beszel host beszel.catmedved.com handle @beszel { reverse_proxy http://beszel:8090 } -# @copypaste host copypaste.catmedved.com +# @copypaste host copypaste.catmedved.com # handle @copypaste { # reverse_proxy http://microbin:8080 # } - @copypaste host copypaste.kladovka52.com + @copypaste host copypaste.kladovka52.com handle @copypaste { reverse_proxy http://microbin:8080 } - @gameyfin host gameyfin.catmedved.com + @gameyfin host gameyfin.catmedved.com handle @gameyfin { reverse_proxy http://gameyfin:8080 } - @gitea host gitea.catmedved.com + @gitea host gitea.catmedved.com handle @gitea { reverse_proxy http://gitea:3000 } - @music host music.catmedved.com + @music host music.catmedved.com handle @music { reverse_proxy http://navidrome:4533 } - @pdftools host pdf-tools.catmedved.com + @pdftools host pdf-tools.catmedved.com handle @pdftools { reverse_proxy http://stirling_pdf:8080 } - @pdftools_k host pdf-tools.kladovka52.com + @pdftools_k host pdf-tools.kladovka52.com handle @pdftools_k { reverse_proxy http://stirling_pdf:8080 } - @photo host photo.catmedved.com + @photo host photo.catmedved.com handle @photo { reverse_proxy immich_server:2283 } - @recepies host recepies.catmedved.com + @recepies host recepies.catmedved.com handle @recepies { reverse_proxy http://mealie:9000 } diff --git a/hosts/home-morefine/systemd/backrest/backrest.service b/hosts/home-morefine/systemd/backrest/backrest.service new file mode 100644 index 0000000..71d989c --- /dev/null +++ b/hosts/home-morefine/systemd/backrest/backrest.service @@ -0,0 +1,14 @@ +[Unit] +Description=Backrest +After=network.target docker.service + +[Service] +Type=simple +User=backups +ExecStart=/usr/local/bin/backrest +WorkingDirectory=/home/backups/backrest +# wrap with caddy reverse proxy +Environment="BACKREST_PORT=172.17.0.1:9898" + +[Install] +WantedBy=multi-user.target diff --git a/hosts/home-morefine/systemd/backrest/install.sh b/hosts/home-morefine/systemd/backrest/install.sh new file mode 100644 index 0000000..ff6e0e2 --- /dev/null +++ b/hosts/home-morefine/systemd/backrest/install.sh @@ -0,0 +1,28 @@ +#! /bin/bash +set -euo pipefail + +BACKREST_VERSION='v1.11.2' +TMPDIR="$(mktemp -d)" + +# backrest working directory +sudo mkdir -p /home/backups/backrest +sudo chown backups:backups /home/backups/backrest + +curl -fL -o "${TMPDIR}/backrest.tar.gz" \ + "https://github.com/garethgeorge/backrest/releases/download/${BACKREST_VERSION}/backrest_Linux_x86_64.tar.gz" + +tar -xzf "${TMPDIR}/backrest.tar.gz" -C "${TMPDIR}" + +if systemctl is-active --quiet backrest; then + sudo systemctl stop backrest + echo "Paused backrest for update" +fi + +sudo install -D -o root -g root -m 0644 ./backrest.service /etc/systemd/system/backrest.service +sudo install -o root -g root -m 0755 "${TMPDIR}/backrest" /usr/local/bin/backrest + +echo "Reloading systemd service" +sudo systemctl daemon-reload +sudo systemctl enable --now backrest + +rm -rf "${TMPDIR}"