Compare commits
12 Commits
8ea072c156
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9f012ffdeb | ||
|
|
7dd0a34a80 | ||
|
|
d2d4b93a6a | ||
|
|
b93bf4493d | ||
|
|
97b5eb30db | ||
|
|
8b35dd31a9 | ||
|
|
efe4d12b3d | ||
|
|
8a3c8a4209 | ||
|
|
2ac97de0c0 | ||
|
|
cea6260e34 | ||
|
|
73035b03fe | ||
|
|
1c1342d82f |
@@ -1 +1,4 @@
|
|||||||
# docker-stacks
|
# docker-stacks
|
||||||
|
|
||||||
|
Config files for my docker setup with stack files (`.yaml`) and dockerfiles (`.dockerfile`) for creating the images in the [`dockerfiles/`](dockerfiles/) folder.
|
||||||
|
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ services:
|
|||||||
image: 'adguard/adguardhome:latest'
|
image: 'adguard/adguardhome:latest'
|
||||||
container_name: 'adguard'
|
container_name: 'adguard'
|
||||||
hostname: 'adguard'
|
hostname: 'adguard'
|
||||||
restart: 'unless-stopped'
|
restart: 'always'
|
||||||
volumes:
|
volumes:
|
||||||
- '/etc/localtime:/etc/localtime:ro'
|
- '/etc/localtime:/etc/localtime:ro'
|
||||||
- '/hdd/adguard/work:/opt/adguardhome/work'
|
- '/hdd/adguard/work:/opt/adguardhome/work'
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ networks:
|
|||||||
services:
|
services:
|
||||||
website:
|
website:
|
||||||
image: nginx:latest
|
image: nginx:latest
|
||||||
restart: unless-stopped
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- '/hdd/ai-deadlines/html:/usr/share/nginx/html:ro'
|
- '/hdd/ai-deadlines/html:/usr/share/nginx/html:ro'
|
||||||
networks:
|
networks:
|
||||||
|
|||||||
260
backups/rsnapshot.conf.klingon
Normal file
260
backups/rsnapshot.conf.klingon
Normal file
@@ -0,0 +1,260 @@
|
|||||||
|
#################################################
|
||||||
|
# rsnapshot.conf - rsnapshot configuration file #
|
||||||
|
#################################################
|
||||||
|
# #
|
||||||
|
# PLEASE BE AWARE OF THE FOLLOWING RULE: #
|
||||||
|
# #
|
||||||
|
# This file requires tabs between elements #
|
||||||
|
# #
|
||||||
|
#################################################
|
||||||
|
|
||||||
|
#######################
|
||||||
|
# CONFIG FILE VERSION #
|
||||||
|
#######################
|
||||||
|
|
||||||
|
config_version 1.2
|
||||||
|
|
||||||
|
###########################
|
||||||
|
# SNAPSHOT ROOT DIRECTORY #
|
||||||
|
###########################
|
||||||
|
|
||||||
|
# All snapshots will be stored under this root directory.
|
||||||
|
#
|
||||||
|
snapshot_root /backups/
|
||||||
|
|
||||||
|
# If no_create_root is enabled, rsnapshot will not automatically create the
|
||||||
|
# snapshot_root directory. This is particularly useful if you are backing
|
||||||
|
# up to removable media, such as a FireWire or USB drive.
|
||||||
|
#
|
||||||
|
#no_create_root 1
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# EXTERNAL PROGRAM DEPENDENCIES #
|
||||||
|
#################################
|
||||||
|
|
||||||
|
# LINUX USERS: Be sure to uncomment "cmd_cp". This gives you extra features.
|
||||||
|
# EVERYONE ELSE: Leave "cmd_cp" commented out for compatibility.
|
||||||
|
#
|
||||||
|
# See the README file or the man page for more details.
|
||||||
|
#
|
||||||
|
cmd_cp /bin/cp
|
||||||
|
|
||||||
|
# uncomment this to use the rm program instead of the built-in perl routine.
|
||||||
|
#
|
||||||
|
cmd_rm /bin/rm
|
||||||
|
|
||||||
|
# rsync must be enabled for anything to work. This is the only command that
|
||||||
|
# must be enabled.
|
||||||
|
#
|
||||||
|
cmd_rsync /usr/bin/rsync
|
||||||
|
|
||||||
|
# Uncomment this to enable remote ssh backups over rsync.
|
||||||
|
#
|
||||||
|
#cmd_ssh /usr/bin/ssh
|
||||||
|
|
||||||
|
# Comment this out to disable syslog support.
|
||||||
|
#
|
||||||
|
cmd_logger /usr/bin/logger
|
||||||
|
|
||||||
|
# Uncomment this to specify the path to "du" for disk usage checks.
|
||||||
|
# If you have an older version of "du", you may also want to check the
|
||||||
|
# "du_args" parameter below.
|
||||||
|
#
|
||||||
|
#cmd_du /usr/bin/du
|
||||||
|
|
||||||
|
# Uncomment this to specify the path to rsnapshot-diff.
|
||||||
|
#
|
||||||
|
#cmd_rsnapshot_diff /usr/bin/rsnapshot-diff
|
||||||
|
|
||||||
|
# Specify the path to a script (and any optional arguments) to run right
|
||||||
|
# before rsnapshot syncs files
|
||||||
|
#
|
||||||
|
cmd_preexec /usr/bin/mount /backups
|
||||||
|
|
||||||
|
# Specify the path to a script (and any optional arguments) to run right
|
||||||
|
# after rsnapshot syncs files
|
||||||
|
#
|
||||||
|
cmd_postexec /usr/bin/python3 /home/backupuser/backup_notifier/notify.py -r && /usr/bin/umount /backups
|
||||||
|
|
||||||
|
# Paths to lvcreate, lvremove, mount and umount commands, for use with
|
||||||
|
# Linux LVMs.
|
||||||
|
#
|
||||||
|
#linux_lvm_cmd_lvcreate /sbin/lvcreate
|
||||||
|
#linux_lvm_cmd_lvremove /sbin/lvremove
|
||||||
|
#linux_lvm_cmd_mount /bin/mount
|
||||||
|
#linux_lvm_cmd_umount /bin/umount
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# BACKUP LEVELS / INTERVALS #
|
||||||
|
# Must be unique and in ascending order #
|
||||||
|
# e.g. alpha, beta, gamma, etc. #
|
||||||
|
#########################################
|
||||||
|
|
||||||
|
retain monthly 6
|
||||||
|
#retain beta 7
|
||||||
|
#retain gamma 4
|
||||||
|
#retain delta 3
|
||||||
|
|
||||||
|
############################################
|
||||||
|
# GLOBAL OPTIONS #
|
||||||
|
# All are optional, with sensible defaults #
|
||||||
|
############################################
|
||||||
|
|
||||||
|
# Verbose level, 1 through 5.
|
||||||
|
# 1 Quiet Print fatal errors only
|
||||||
|
# 2 Default Print errors and warnings only
|
||||||
|
# 3 Verbose Show equivalent shell commands being executed
|
||||||
|
# 4 Extra Verbose Show extra verbose information
|
||||||
|
# 5 Debug mode Everything
|
||||||
|
#
|
||||||
|
verbose 2
|
||||||
|
|
||||||
|
# Same as "verbose" above, but controls the amount of data sent to the
|
||||||
|
# logfile, if one is being used. The default is 3.
|
||||||
|
# If you want the rsync output, you have to set it to 4
|
||||||
|
#
|
||||||
|
loglevel 3
|
||||||
|
|
||||||
|
# If you enable this, data will be written to the file you specify. The
|
||||||
|
# amount of data written is controlled by the "loglevel" parameter.
|
||||||
|
#
|
||||||
|
logfile /var/log/rsnapshot.log
|
||||||
|
|
||||||
|
# If enabled, rsnapshot will write a lockfile to prevent two instances
|
||||||
|
# from running simultaneously (and messing up the snapshot_root).
|
||||||
|
# If you enable this, make sure the lockfile directory is not world
|
||||||
|
# writable. Otherwise anyone can prevent the program from running.
|
||||||
|
#
|
||||||
|
lockfile /var/run/rsnapshot.pid
|
||||||
|
|
||||||
|
# By default, rsnapshot check lockfile, check if PID is running
|
||||||
|
# and if not, consider lockfile as stale, then start
|
||||||
|
# Enabling this stop rsnapshot if PID in lockfile is not running
|
||||||
|
#
|
||||||
|
#stop_on_stale_lockfile 0
|
||||||
|
|
||||||
|
# Default rsync args. All rsync commands have at least these options set.
|
||||||
|
#
|
||||||
|
#rsync_short_args -a
|
||||||
|
#rsync_long_args --delete --numeric-ids --relative --delete-excluded
|
||||||
|
|
||||||
|
# ssh has no args passed by default, but you can specify some here.
|
||||||
|
#
|
||||||
|
#ssh_args -p 22
|
||||||
|
|
||||||
|
# Default arguments for the "du" program (for disk space reporting).
|
||||||
|
# The GNU version of "du" is preferred. See the man page for more details.
|
||||||
|
# If your version of "du" doesn't support the -h flag, try -k flag instead.
|
||||||
|
#
|
||||||
|
#du_args -csh
|
||||||
|
|
||||||
|
# If this is enabled, rsync won't span filesystem partitions within a
|
||||||
|
# backup point. This essentially passes the -x option to rsync.
|
||||||
|
# The default is 0 (off).
|
||||||
|
#
|
||||||
|
#one_fs 0
|
||||||
|
|
||||||
|
# The include and exclude parameters, if enabled, simply get passed directly
|
||||||
|
# to rsync. If you have multiple include/exclude patterns, put each one on a
|
||||||
|
# separate line. Please look up the --include and --exclude options in the
|
||||||
|
# rsync man page for more details on how to specify file name patterns.
|
||||||
|
#
|
||||||
|
#include ???
|
||||||
|
#include ???
|
||||||
|
exclude */files_trashbin/*
|
||||||
|
|
||||||
|
# The include_file and exclude_file parameters, if enabled, simply get
|
||||||
|
# passed directly to rsync. Please look up the --include-from and
|
||||||
|
# --exclude-from options in the rsync man page for more details.
|
||||||
|
#
|
||||||
|
#include_file /path/to/include/file
|
||||||
|
#exclude_file /path/to/exclude/file
|
||||||
|
|
||||||
|
# If your version of rsync supports --link-dest, consider enabling this.
|
||||||
|
# This is the best way to support special files (FIFOs, etc) cross-platform.
|
||||||
|
# The default is 0 (off).
|
||||||
|
#
|
||||||
|
#link_dest 0
|
||||||
|
|
||||||
|
# When sync_first is enabled, it changes the default behaviour of rsnapshot.
|
||||||
|
# Normally, when rsnapshot is called with its lowest interval
|
||||||
|
# (i.e.: "rsnapshot alpha"), it will sync files AND rotate the lowest
|
||||||
|
# intervals. With sync_first enabled, "rsnapshot sync" handles the file sync,
|
||||||
|
# and all interval calls simply rotate files. See the man page for more
|
||||||
|
# details. The default is 0 (off).
|
||||||
|
#
|
||||||
|
#sync_first 0
|
||||||
|
|
||||||
|
# If enabled, rsnapshot will move the oldest directory for each interval
|
||||||
|
# to [interval_name].delete, then it will remove the lockfile and delete
|
||||||
|
# that directory just before it exits. The default is 0 (off).
|
||||||
|
#
|
||||||
|
#use_lazy_deletes 0
|
||||||
|
|
||||||
|
# Number of rsync re-tries. If you experience any network problems or
|
||||||
|
# network card issues that tend to cause ssh to fail with errors like
|
||||||
|
# "Corrupted MAC on input", for example, set this to a non-zero value
|
||||||
|
# to have the rsync operation re-tried.
|
||||||
|
#
|
||||||
|
#rsync_numtries 0
|
||||||
|
|
||||||
|
# LVM parameters. Used to backup with creating lvm snapshot before backup
|
||||||
|
# and removing it after. This should ensure consistency of data in some special
|
||||||
|
# cases
|
||||||
|
#
|
||||||
|
# LVM snapshot(s) size (lvcreate --size option).
|
||||||
|
#
|
||||||
|
#linux_lvm_snapshotsize 100M
|
||||||
|
|
||||||
|
# Name to be used when creating the LVM logical volume snapshot(s).
|
||||||
|
#
|
||||||
|
#linux_lvm_snapshotname rsnapshot
|
||||||
|
|
||||||
|
# Path to the LVM Volume Groups.
|
||||||
|
#
|
||||||
|
#linux_lvm_vgpath /dev
|
||||||
|
|
||||||
|
# Mount point to use to temporarily mount the snapshot(s).
|
||||||
|
#
|
||||||
|
#linux_lvm_mountpath /path/to/mount/lvm/snapshot/during/backup
|
||||||
|
|
||||||
|
###############################
|
||||||
|
### BACKUP POINTS / SCRIPTS ###
|
||||||
|
###############################
|
||||||
|
|
||||||
|
|
||||||
|
# BACKUP NON-HDD SERVER DATA
|
||||||
|
backup /server_data server_data/
|
||||||
|
|
||||||
|
# BACKUP DOCKER VOLUMES
|
||||||
|
backup /var/lib/docker/volumes docker_volumes/
|
||||||
|
|
||||||
|
# BACKUP FULL HDD <- this will take some time ...
|
||||||
|
backup /hdd hdd/
|
||||||
|
|
||||||
|
|
||||||
|
# LOCALHOST
|
||||||
|
#backup /home/ localhost/
|
||||||
|
#backup /etc/ localhost/
|
||||||
|
#backup /usr/local/ localhost/
|
||||||
|
#backup /var/log/rsnapshot localhost/
|
||||||
|
#backup /etc/passwd localhost/
|
||||||
|
#backup /home/foo/My Documents/ localhost/
|
||||||
|
#backup /foo/bar/ localhost/ one_fs=1,rsync_short_args=-urltvpog
|
||||||
|
#backup_script /usr/local/bin/backup_pgsql.sh localhost/postgres/
|
||||||
|
# You must set linux_lvm_* parameters below before using lvm snapshots
|
||||||
|
#backup lvm://vg0/xen-home/ lvm-vg0/xen-home/
|
||||||
|
|
||||||
|
# EXAMPLE.COM
|
||||||
|
#backup_exec /bin/date "+ backup of example.com started at %c"
|
||||||
|
#backup root@example.com:/home/ example.com/ +rsync_long_args=--bwlimit=16,exclude=core
|
||||||
|
#backup root@example.com:/etc/ example.com/ exclude=mtab,exclude=core
|
||||||
|
#backup_exec ssh root@example.com "mysqldump -A > /var/db/dump/mysql.sql"
|
||||||
|
#backup root@example.com:/var/db/dump/ example.com/
|
||||||
|
#backup_exec /bin/date "+ backup of example.com ended at %c"
|
||||||
|
|
||||||
|
# CVS.SOURCEFORGE.NET
|
||||||
|
#backup_script /usr/local/bin/backup_rsnapshot_cvsroot.sh rsnapshot.cvs.sourceforge.net/
|
||||||
|
|
||||||
|
# RSYNC.SAMBA.ORG
|
||||||
|
#backup rsync://rsync.samba.org/rsyncftp/ rsync.samba.org/rsyncftp/
|
||||||
270
backups/rsnapshot.conf.pi5
Normal file
270
backups/rsnapshot.conf.pi5
Normal file
@@ -0,0 +1,270 @@
|
|||||||
|
#################################################
|
||||||
|
# rsnapshot.conf - rsnapshot configuration file #
|
||||||
|
#################################################
|
||||||
|
# #
|
||||||
|
# PLEASE BE AWARE OF THE FOLLOWING RULE: #
|
||||||
|
# #
|
||||||
|
# This file requires tabs between elements #
|
||||||
|
# #
|
||||||
|
#################################################
|
||||||
|
|
||||||
|
#######################
|
||||||
|
# CONFIG FILE VERSION #
|
||||||
|
#######################
|
||||||
|
|
||||||
|
config_version 1.2
|
||||||
|
|
||||||
|
###########################
|
||||||
|
# SNAPSHOT ROOT DIRECTORY #
|
||||||
|
###########################
|
||||||
|
|
||||||
|
# All snapshots will be stored under this root directory.
|
||||||
|
#
|
||||||
|
snapshot_root /backups/
|
||||||
|
|
||||||
|
# If no_create_root is enabled, rsnapshot will not automatically create the
|
||||||
|
# snapshot_root directory. This is particularly useful if you are backing
|
||||||
|
# up to removable media, such as a FireWire or USB drive.
|
||||||
|
#
|
||||||
|
no_create_root 1
|
||||||
|
|
||||||
|
#################################
|
||||||
|
# EXTERNAL PROGRAM DEPENDENCIES #
|
||||||
|
#################################
|
||||||
|
|
||||||
|
# LINUX USERS: Be sure to uncomment "cmd_cp". This gives you extra features.
|
||||||
|
# EVERYONE ELSE: Leave "cmd_cp" commented out for compatibility.
|
||||||
|
#
|
||||||
|
# See the README file or the man page for more details.
|
||||||
|
#
|
||||||
|
cmd_cp /bin/cp
|
||||||
|
|
||||||
|
# uncomment this to use the rm program instead of the built-in perl routine.
|
||||||
|
#
|
||||||
|
cmd_rm /bin/rm
|
||||||
|
|
||||||
|
# rsync must be enabled for anything to work. This is the only command that
|
||||||
|
# must be enabled.
|
||||||
|
#
|
||||||
|
cmd_rsync /usr/bin/rsync
|
||||||
|
|
||||||
|
# Uncomment this to enable remote ssh backups over rsync.
|
||||||
|
#
|
||||||
|
cmd_ssh /usr/bin/ssh
|
||||||
|
|
||||||
|
# Comment this out to disable syslog support.
|
||||||
|
#
|
||||||
|
cmd_logger /usr/bin/logger
|
||||||
|
|
||||||
|
# Uncomment this to specify the path to "du" for disk usage checks.
|
||||||
|
# If you have an older version of "du", you may also want to check the
|
||||||
|
# "du_args" parameter below.
|
||||||
|
#
|
||||||
|
#cmd_du /usr/bin/du
|
||||||
|
|
||||||
|
# Uncomment this to specify the path to rsnapshot-diff.
|
||||||
|
#
|
||||||
|
#cmd_rsnapshot_diff /usr/bin/rsnapshot-diff
|
||||||
|
|
||||||
|
# Specify the path to a script (and any optional arguments) to run right
|
||||||
|
# before rsnapshot syncs files
|
||||||
|
#
|
||||||
|
#cmd_preexec /path/to/preexec/script
|
||||||
|
|
||||||
|
# Specify the path to a script (and any optional arguments) to run right
|
||||||
|
# after rsnapshot syncs files
|
||||||
|
#
|
||||||
|
#cmd_postexec /path/to/postexec/script
|
||||||
|
|
||||||
|
# Paths to lvcreate, lvremove, mount and umount commands, for use with
|
||||||
|
# Linux LVMs.
|
||||||
|
#
|
||||||
|
#linux_lvm_cmd_lvcreate /sbin/lvcreate
|
||||||
|
#linux_lvm_cmd_lvremove /sbin/lvremove
|
||||||
|
#linux_lvm_cmd_mount /bin/mount
|
||||||
|
#linux_lvm_cmd_umount /bin/umount
|
||||||
|
|
||||||
|
#########################################
|
||||||
|
# BACKUP LEVELS / INTERVALS #
|
||||||
|
# Must be unique and in ascending order #
|
||||||
|
# e.g. alpha, beta, gamma, etc. #
|
||||||
|
#########################################
|
||||||
|
|
||||||
|
retain daily 7
|
||||||
|
retain weekly 4
|
||||||
|
retain monthly 6
|
||||||
|
#retain delta 3
|
||||||
|
|
||||||
|
############################################
|
||||||
|
# GLOBAL OPTIONS #
|
||||||
|
# All are optional, with sensible defaults #
|
||||||
|
############################################
|
||||||
|
|
||||||
|
# Verbose level, 1 through 5.
|
||||||
|
# 1 Quiet Print fatal errors only
|
||||||
|
# 2 Default Print errors and warnings only
|
||||||
|
# 3 Verbose Show equivalent shell commands being executed
|
||||||
|
# 4 Extra Verbose Show extra verbose information
|
||||||
|
# 5 Debug mode Everything
|
||||||
|
#
|
||||||
|
verbose 2
|
||||||
|
|
||||||
|
# Same as "verbose" above, but controls the amount of data sent to the
|
||||||
|
# logfile, if one is being used. The default is 3.
|
||||||
|
# If you want the rsync output, you have to set it to 4
|
||||||
|
#
|
||||||
|
loglevel 3
|
||||||
|
|
||||||
|
# If you enable this, data will be written to the file you specify. The
|
||||||
|
# amount of data written is controlled by the "loglevel" parameter.
|
||||||
|
#
|
||||||
|
logfile /var/log/rsnapshot.log
|
||||||
|
|
||||||
|
# If enabled, rsnapshot will write a lockfile to prevent two instances
|
||||||
|
# from running simultaneously (and messing up the snapshot_root).
|
||||||
|
# If you enable this, make sure the lockfile directory is not world
|
||||||
|
# writable. Otherwise anyone can prevent the program from running.
|
||||||
|
#
|
||||||
|
lockfile /var/run/rsnapshot.pid
|
||||||
|
|
||||||
|
# By default, rsnapshot check lockfile, check if PID is running
|
||||||
|
# and if not, consider lockfile as stale, then start
|
||||||
|
# Enabling this stop rsnapshot if PID in lockfile is not running
|
||||||
|
#
|
||||||
|
#stop_on_stale_lockfile 0
|
||||||
|
|
||||||
|
# Default rsync args. All rsync commands have at least these options set.
|
||||||
|
#
|
||||||
|
#rsync_short_args -a
|
||||||
|
rsync_long_args --delete --numeric-ids --relative --delete-excluded --rsync-path='sudo /usr/bin/rsync'
|
||||||
|
|
||||||
|
# ssh has no args passed by default, but you can specify some here.
|
||||||
|
#
|
||||||
|
ssh_args -o BatchMode=yes -4
|
||||||
|
|
||||||
|
# Default arguments for the "du" program (for disk space reporting).
|
||||||
|
# The GNU version of "du" is preferred. See the man page for more details.
|
||||||
|
# If your version of "du" doesn't support the -h flag, try -k flag instead.
|
||||||
|
#
|
||||||
|
#du_args -csh
|
||||||
|
|
||||||
|
# If this is enabled, rsync won't span filesystem partitions within a
|
||||||
|
# backup point. This essentially passes the -x option to rsync.
|
||||||
|
# The default is 0 (off).
|
||||||
|
#
|
||||||
|
#one_fs 0
|
||||||
|
|
||||||
|
# The include and exclude parameters, if enabled, simply get passed directly
|
||||||
|
# to rsync. If you have multiple include/exclude patterns, put each one on a
|
||||||
|
# separate line. Please look up the --include and --exclude options in the
|
||||||
|
# rsync man page for more details on how to specify file name patterns.
|
||||||
|
#
|
||||||
|
#include ???
|
||||||
|
#include ???
|
||||||
|
exclude */files_trashbin/*
|
||||||
|
exclude */files_versions/*
|
||||||
|
|
||||||
|
# The include_file and exclude_file parameters, if enabled, simply get
|
||||||
|
# passed directly to rsync. Please look up the --include-from and
|
||||||
|
# --exclude-from options in the rsync man page for more details.
|
||||||
|
#
|
||||||
|
#include_file /path/to/include/file
|
||||||
|
#exclude_file /path/to/exclude/file
|
||||||
|
|
||||||
|
# If your version of rsync supports --link-dest, consider enabling this.
|
||||||
|
# This is the best way to support special files (FIFOs, etc) cross-platform.
|
||||||
|
# The default is 0 (off).
|
||||||
|
#
|
||||||
|
#link_dest 0
|
||||||
|
|
||||||
|
# When sync_first is enabled, it changes the default behaviour of rsnapshot.
|
||||||
|
# Normally, when rsnapshot is called with its lowest interval
|
||||||
|
# (i.e.: "rsnapshot alpha"), it will sync files AND rotate the lowest
|
||||||
|
# intervals. With sync_first enabled, "rsnapshot sync" handles the file sync,
|
||||||
|
# and all interval calls simply rotate files. See the man page for more
|
||||||
|
# details. The default is 0 (off).
|
||||||
|
#
|
||||||
|
#sync_first 0
|
||||||
|
|
||||||
|
# If enabled, rsnapshot will move the oldest directory for each interval
|
||||||
|
# to [interval_name].delete, then it will remove the lockfile and delete
|
||||||
|
# that directory just before it exits. The default is 0 (off).
|
||||||
|
#
|
||||||
|
#use_lazy_deletes 0
|
||||||
|
|
||||||
|
# Number of rsync re-tries. If you experience any network problems or
|
||||||
|
# network card issues that tend to cause ssh to fail with errors like
|
||||||
|
# "Corrupted MAC on input", for example, set this to a non-zero value
|
||||||
|
# to have the rsync operation re-tried.
|
||||||
|
#
|
||||||
|
#rsync_numtries 0
|
||||||
|
|
||||||
|
# LVM parameters. Used to backup with creating lvm snapshot before backup
|
||||||
|
# and removing it after. This should ensure consistency of data in some special
|
||||||
|
# cases
|
||||||
|
#
|
||||||
|
# LVM snapshot(s) size (lvcreate --size option).
|
||||||
|
#
|
||||||
|
#linux_lvm_snapshotsize 100M
|
||||||
|
|
||||||
|
# Name to be used when creating the LVM logical volume snapshot(s).
|
||||||
|
#
|
||||||
|
#linux_lvm_snapshotname rsnapshot
|
||||||
|
|
||||||
|
# Path to the LVM Volume Groups.
|
||||||
|
#
|
||||||
|
#linux_lvm_vgpath /dev
|
||||||
|
|
||||||
|
# Mount point to use to temporarily mount the snapshot(s).
|
||||||
|
#
|
||||||
|
#linux_lvm_mountpath /path/to/mount/lvm/snapshot/during/backup
|
||||||
|
|
||||||
|
###############################
|
||||||
|
### BACKUP POINTS / SCRIPTS ###
|
||||||
|
###############################
|
||||||
|
|
||||||
|
backup_exec /bin/date "+ server backup started at %c"
|
||||||
|
backup backupuser@klingon:/hdd/nextcloud nextcloud/
|
||||||
|
backup backupuser@klingon:/server_data/ server_data/
|
||||||
|
backup backupuser@klingon:/var/lib/docker/volumes docker_volumes/
|
||||||
|
backup backupuser@klingon:/hdd/esphome esphome/
|
||||||
|
backup backupuser@klingon:/hdd/audobookshelf/ audobookshelf/
|
||||||
|
backup backupuser@klingon:/hdd/home-assistant/ home-assistant/
|
||||||
|
backup backupuser@klingon:/hdd/nginx_conf_with_compression/ nginx_conf_with_compression/
|
||||||
|
backup backupuser@klingon:/hdd/tobias-website/ tobias-website/
|
||||||
|
backup backupuser@klingon:/hdd/update-tobias-website/ update-tobias-website/
|
||||||
|
backup backupuser@klingon:/hdd/uptime-kuma/ uptime-kuma/
|
||||||
|
backup backupuser@klingon:/hdd/plausible/ plausible/
|
||||||
|
backup backupuser@klingon:/hdd/vikunja/ vikunja/
|
||||||
|
backup backupuser@klingon:/hdd/adguard/ adguard/
|
||||||
|
backup backupuser@klingon:/hdd/alibi-website/ alibi-website/
|
||||||
|
backup backupuser@klingon:/hdd/update-alibi-website/ update-alibi-website/
|
||||||
|
backup backupuser@klingon:/hdd/update-tobias-website/ update-tobias-website/
|
||||||
|
backup backupuser@klingon:/hdd/gitea/ gitea/
|
||||||
|
backup_exec /bin/date "+ server backup ended at %c"
|
||||||
|
|
||||||
|
# LOCALHOST
|
||||||
|
#backup /home/ localhost/
|
||||||
|
#backup /etc/ localhost/
|
||||||
|
#backup /usr/local/ localhost/
|
||||||
|
#backup /var/log/rsnapshot localhost/
|
||||||
|
#backup /etc/passwd localhost/
|
||||||
|
#backup /home/foo/My Documents/ localhost/
|
||||||
|
#backup /foo/bar/ localhost/ one_fs=1,rsync_short_args=-urltvpog
|
||||||
|
#backup_script /usr/local/bin/backup_pgsql.sh localhost/postgres/
|
||||||
|
# You must set linux_lvm_* parameters below before using lvm snapshots
|
||||||
|
#backup lvm://vg0/xen-home/ lvm-vg0/xen-home/
|
||||||
|
|
||||||
|
# EXAMPLE.COM
|
||||||
|
#backup_exec /bin/date "+ backup of example.com started at %c"
|
||||||
|
#backup root@example.com:/home/ example.com/ +rsync_long_args=--bwlimit=16,exclude=core
|
||||||
|
#backup root@example.com:/etc/ example.com/ exclude=mtab,exclude=core
|
||||||
|
#backup_exec ssh root@example.com "mysqldump -A > /var/db/dump/mysql.sql"
|
||||||
|
#backup root@example.com:/var/db/dump/ example.com/
|
||||||
|
#backup_exec /bin/date "+ backup of example.com ended at %c"
|
||||||
|
|
||||||
|
# CVS.SOURCEFORGE.NET
|
||||||
|
#backup_script /usr/local/bin/backup_rsnapshot_cvsroot.sh rsnapshot.cvs.sourceforge.net/
|
||||||
|
|
||||||
|
# RSYNC.SAMBA.ORG
|
||||||
|
#backup rsync://rsync.samba.org/rsyncftp/ rsync.samba.org/rsyncftp/
|
||||||
28
dockerfiles/alpine-git-python.dockerfile
Normal file
28
dockerfiles/alpine-git-python.dockerfile
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
# Use an official Alpine-based Python image as your base
|
||||||
|
FROM python:3.9-alpine
|
||||||
|
|
||||||
|
# Set the working directory
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
# Install git and other build dependencies (if your Python packages require compilation)
|
||||||
|
# It's good practice to install build dependencies and then remove them in the same RUN layer
|
||||||
|
# to keep the final image size down.
|
||||||
|
RUN apk add --no-cache git openssh-client # openssh-client if you need to clone private repos via SSH
|
||||||
|
|
||||||
|
# Install Python build dependencies (e.g., for packages with C extensions)
|
||||||
|
# Common ones include build-base, libffi-dev, openssl-dev.
|
||||||
|
# Add more as needed based on your requirements.txt.
|
||||||
|
RUN apk add --no-cache --virtual .build-deps \
|
||||||
|
build-base \
|
||||||
|
libffi-dev \
|
||||||
|
openssl-dev \
|
||||||
|
# Add any other -dev packages your Python libraries might need
|
||||||
|
# e.g., if you have psycopg2, you'd need postgresql-dev
|
||||||
|
# if you have Pillow, you might need zlib-dev, jpeg-dev, etc.
|
||||||
|
&& pip install --upgrade pip
|
||||||
|
|
||||||
|
# Install Python dependencies
|
||||||
|
RUN pip install --no-cache-dir requests bs4 pytz pyyaml dateparser loguru
|
||||||
|
|
||||||
|
# Remove build dependencies to keep the image small
|
||||||
|
RUN apk del .build-deps
|
||||||
31
dockerfiles/alpine-hugo.dockerfile
Normal file
31
dockerfiles/alpine-hugo.dockerfile
Normal file
@@ -0,0 +1,31 @@
|
|||||||
|
# Use Alpine Linux as the base image (lightweight and secure)
|
||||||
|
FROM alpine:latest
|
||||||
|
|
||||||
|
# Set maintainer label (good practice for research reproducibility)
|
||||||
|
LABEL maintainer="Tobias Nauen"
|
||||||
|
|
||||||
|
# Install system dependencies (Git, Bash, and Hugo)
|
||||||
|
RUN apk add --no-cache \
|
||||||
|
git \
|
||||||
|
bash \
|
||||||
|
wget \
|
||||||
|
go \
|
||||||
|
gzip
|
||||||
|
# && wget -O /tmp/hugo.deb https://github.com/gohugoio/hugo/releases/download/v0.111.3/hugo_extended_0.111.3_linux-amd64.deb \
|
||||||
|
# && apk add --no-cache --virtual .build-deps dpkg \
|
||||||
|
# && dpkg -i /tmp/hugo.deb \
|
||||||
|
# && rm /tmp/hugo.deb \
|
||||||
|
# && apk del .build-deps \
|
||||||
|
# && hugo version
|
||||||
|
|
||||||
|
ENV GOPATH=/go
|
||||||
|
ENV PATH="$PATH:$GOPATH/bin"
|
||||||
|
|
||||||
|
RUN go version
|
||||||
|
|
||||||
|
RUN apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community hugo
|
||||||
|
|
||||||
|
RUN hugo version
|
||||||
|
|
||||||
|
# Set working directory (adjust as needed)
|
||||||
|
WORKDIR /app
|
||||||
9
dockerfiles/nginx-alibi.dockerfile
Normal file
9
dockerfiles/nginx-alibi.dockerfile
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
FROM nginx:latest
|
||||||
|
|
||||||
|
RUN apt-get update
|
||||||
|
|
||||||
|
RUN apt-get install -y \
|
||||||
|
git \
|
||||||
|
brotli
|
||||||
|
|
||||||
|
RUN rm -rf /var/lib/apt/lists/*
|
||||||
19
gitea.yaml
Normal file
19
gitea.yaml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
version: "3"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
services:
|
||||||
|
server:
|
||||||
|
image: docker.gitea.com/gitea:latest
|
||||||
|
environment:
|
||||||
|
- USER_UID=1000
|
||||||
|
- USER_GID=1000
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
volumes:
|
||||||
|
- /hdd/gitea:/data
|
||||||
|
- /etc/timezone:/etc/timezone:ro
|
||||||
|
- /etc/localtime:/etc/localtime:ro
|
||||||
@@ -9,7 +9,7 @@ networks:
|
|||||||
services:
|
services:
|
||||||
nextcloud-redis:
|
nextcloud-redis:
|
||||||
image: redis:alpine
|
image: redis:alpine
|
||||||
restart: unless-stopped
|
restart: always
|
||||||
command: redis-server --requirepass bjkf34bbhk23bjwfes
|
command: redis-server --requirepass bjkf34bbhk23bjwfes
|
||||||
networks:
|
networks:
|
||||||
- backend
|
- backend
|
||||||
@@ -23,6 +23,7 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- /hdd/nextcloud/data:/var/www/html/data
|
- /hdd/nextcloud/data:/var/www/html/data
|
||||||
- /server_data/nextcloud/config:/var/www/html
|
- /server_data/nextcloud/config:/var/www/html
|
||||||
|
- /hdd/media/games:/external/games
|
||||||
environment:
|
environment:
|
||||||
- MYSQL_PASSWORD=heHT672G2%H6
|
- MYSQL_PASSWORD=heHT672G2%H6
|
||||||
- MYSQL_DATABASE=nextcloud
|
- MYSQL_DATABASE=nextcloud
|
||||||
@@ -43,7 +44,9 @@ services:
|
|||||||
restart: unless-stopped
|
restart: unless-stopped
|
||||||
entrypoint: /cron.sh
|
entrypoint: /cron.sh
|
||||||
volumes:
|
volumes:
|
||||||
- /hdd/nextcloud/data:/var/www/html
|
- /hdd/nextcloud/data:/var/www/html/data
|
||||||
|
- /server_data/nextcloud/config:/var/www/html
|
||||||
|
- /hdd/media/games:/external/games
|
||||||
environment:
|
environment:
|
||||||
- MYSQL_PASSWORD=heHT672G2%H6
|
- MYSQL_PASSWORD=heHT672G2%H6
|
||||||
- MYSQL_DATABASE=nextcloud
|
- MYSQL_DATABASE=nextcloud
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ networks:
|
|||||||
services:
|
services:
|
||||||
app:
|
app:
|
||||||
image: 'jc21/nginx-proxy-manager:latest'
|
image: 'jc21/nginx-proxy-manager:latest'
|
||||||
restart: unless-stopped
|
restart: always
|
||||||
ports:
|
ports:
|
||||||
# These ports are in format <host-port>:<container-port>
|
# These ports are in format <host-port>:<container-port>
|
||||||
- '80:80' # Public HTTP Port
|
- '80:80' # Public HTTP Port
|
||||||
|
|||||||
@@ -1,16 +0,0 @@
|
|||||||
version: '1'
|
|
||||||
|
|
||||||
|
|
||||||
networks:
|
|
||||||
frontend:
|
|
||||||
external: true
|
|
||||||
|
|
||||||
services:
|
|
||||||
tobia-website:
|
|
||||||
image: nginx_with_hugo:latest
|
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
|
||||||
- '/hdd/tobias-website:/website'
|
|
||||||
- '/hdd/update-tobias-website:/docker-entrypoint.d:ro'
|
|
||||||
networks:
|
|
||||||
- frontend
|
|
||||||
@@ -1,14 +1,24 @@
|
|||||||
version: "3.3"
|
version: "3.3"
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
plausible:
|
||||||
|
|
||||||
services:
|
services:
|
||||||
mail:
|
mail:
|
||||||
image: bytemark/smtp
|
image: bytemark/smtp
|
||||||
restart: always
|
restart: always
|
||||||
|
networks:
|
||||||
|
- plausible
|
||||||
|
|
||||||
plausible_db:
|
plausible_db:
|
||||||
# Plausible v2.0.0 was tested against PostgreSQL versions 12, 13, and 14
|
# Plausible v2.0.0 was tested against PostgreSQL versions 12, 13, and 14
|
||||||
# https://github.com/plausible/analytics/blob/v2.0.0/.github/workflows/elixir.yml#L16
|
# https://github.com/plausible/analytics/blob/v2.0.0/.github/workflows/elixir.yml#L16
|
||||||
image: postgres:14-alpine
|
image: postgres:14-alpine
|
||||||
restart: always
|
restart: always
|
||||||
|
networks:
|
||||||
|
- plausible
|
||||||
volumes:
|
volumes:
|
||||||
- /hdd/plausible/db_data:/var/lib/postgresql/data
|
- /hdd/plausible/db_data:/var/lib/postgresql/data
|
||||||
environment:
|
environment:
|
||||||
@@ -17,6 +27,8 @@ services:
|
|||||||
plausible_events_db:
|
plausible_events_db:
|
||||||
image: clickhouse/clickhouse-server:23.3.7.5-alpine
|
image: clickhouse/clickhouse-server:23.3.7.5-alpine
|
||||||
restart: always
|
restart: always
|
||||||
|
networks:
|
||||||
|
- plausible
|
||||||
volumes:
|
volumes:
|
||||||
- /hdd/plausible/event_data:/var/lib/clickhouse
|
- /hdd/plausible/event_data:/var/lib/clickhouse
|
||||||
- /hdd/plausible/clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro
|
- /hdd/plausible/clickhouse/clickhouse-config.xml:/etc/clickhouse-server/config.d/logging.xml:ro
|
||||||
@@ -34,6 +46,9 @@ services:
|
|||||||
- plausible_db
|
- plausible_db
|
||||||
- plausible_events_db
|
- plausible_events_db
|
||||||
- mail
|
- mail
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
- plausible
|
||||||
environment:
|
environment:
|
||||||
- BASE_URL=https://plausible.nauen-it.de
|
- BASE_URL=https://plausible.nauen-it.de
|
||||||
- SECRET_KEY_BASE=cwLeX7x0f7E50Q9+ANihxd6T7vbHUloZQ+70ex+eEbydJITKCxf+piXk+S1LeMP+
|
- SECRET_KEY_BASE=cwLeX7x0f7E50Q9+ANihxd6T7vbHUloZQ+70ex+eEbydJITKCxf+piXk+S1LeMP+
|
||||||
|
|||||||
28
tobias-website.yaml
Normal file
28
tobias-website.yaml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
version: '1.1'
|
||||||
|
|
||||||
|
networks:
|
||||||
|
frontend:
|
||||||
|
external: true
|
||||||
|
|
||||||
|
services:
|
||||||
|
website:
|
||||||
|
image: nginx:latest
|
||||||
|
restart: always
|
||||||
|
volumes:
|
||||||
|
- '/hdd/tobias-website/public:/usr/share/nginx/html:ro'
|
||||||
|
networks:
|
||||||
|
- frontend
|
||||||
|
|
||||||
|
updater:
|
||||||
|
# Build the image from your Dockerfile.updater
|
||||||
|
image: alpine-hugo
|
||||||
|
restart: unless-stopped
|
||||||
|
volumes:
|
||||||
|
# Mount the same volume as Nginx so the updater can write to it
|
||||||
|
- '/hdd/tobias-website:/app'
|
||||||
|
# You might also want to mount your script if you want to edit it without rebuilding the image
|
||||||
|
# - ./your_update_script.sh:/app/your_update_script.sh:ro
|
||||||
|
command: sh -c "cd /app; while true; do /app/build_website.sh; sleep 3600; done" # Run every hour (3600 seconds)
|
||||||
|
# If your update script needs to connect to the internet (e.g., for git clone, API calls),
|
||||||
|
# it needs network access, which is usually provided by default by Docker Compose's bridge network.
|
||||||
|
# If it needs to interact with your Nginx or other services, they'll be on the same default network.
|
||||||
10
uptime-kuma.yaml
Normal file
10
uptime-kuma.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
version: '1.0'
|
||||||
|
|
||||||
|
services:
|
||||||
|
uptime-kuma:
|
||||||
|
image: louislam/uptime-kuma:2
|
||||||
|
restart: unless-stopped
|
||||||
|
ports:
|
||||||
|
- "3001:3001"
|
||||||
|
volumes:
|
||||||
|
- /hdd/uptime-kuma:/app/data
|
||||||
Reference in New Issue
Block a user