dirvish on debian
currently tested on: x86_64, arm64, arm
In March 2023 - Docker informed me that they are going to remove my
organizations servercontainers
and desktopcontainers
unless
I'm upgrading to a pro plan.
I'm not going to do that. It's more of a professionally done hobby then a professional job I'm earning money with.
In order to avoid bad actors taking over my org. names and publishing potenial
backdoored containers, I'd recommend to switch over to my new github registry: ghcr.io/servercontainers
.
You can specify DOCKER_REGISTRY
environment variable (for example my.registry.tld
)
and use the build script to build the main container and it's variants for x86_64, arm64 and arm
You'll find all images tagged like d11.2-dv1.2.1-2.1
which means d<debian version>-dv<dirvish version (with some esacped chars)>
.
This way you can pin your installation/configuration to a certian version. or easily roll back if you experience any problems
(don't forget to open a issue in that case ;D).
To build a latest
tag run ./build.sh release
- 2023-03-20
- github action to build container
- implemented ghcr.io as new registry
- 2023-03-19
- switched from docker hub to a build-yourself container
- 2022-01-09
- new build script
- version tagging
- update to debian
bullseye
- 2021-07-27
- fix how report fetches latest backup of the day
- fix
\r
windows linebreaks inmaster.conf
- 2021-03-19
- configure return-address for status mail
- 2021-03-17
- multiarch build
- rewrite to debian:buster
This Dockerfile (available as servercontainers/dirvish) gives you a Dirvish Backup System in a container.
- Backup System in Container
- runs at a specific time in infinite loop
- Standalone Backup
- container exits after backup is done
- good if triggered from external cronjob etc.
For Configuration of the Server you use environment Variables and volume files.
It's based on the debian Image
View in GitHub Registry ghcr.io/servercontainers/dirvish
View in GitHub ServerContainers/dirvish
currently tested on: x86_64, arm64, arm
-
STANDALONE
- if this variable is set to any value the container stops after the backup is done
- default not set
-
TZ
- specify the timezone inside the container
- default Europe/Berlin
-
CRONTIME
- overwrite default crontime with your one
- default 30 4 * * *
-
MAIL_RECIPIENTS
- list of mail addresses to recieve status mail after backup
- e.g.:
[email protected] [email protected] [email protected]
-
RETURN_ADDRESS
- sender of status email
- default:
[email protected]
- e.g.:
[email protected]
- /config
- this is where the container looks for:
- master.conf (dirvish main configuration file - see example or official manual)
- id_rsa (ssh private key to connect to backup-clients/servers)
- don't forget to specify it inside master.conf
- ida_rsa.pub (ssh public key - not needed - only on clients)
- this is where the container looks for:
- /backups
- this is where the container stores backups and looks for backup-client configurations
- default layout beneath this folder: bank/backup/dirvish/default.conf
Take a look at the GitHub Repo, you'll find a example there.
To connect to your hosts, you need to install a ssh keypair on them. This keypair should be moved to the config folder of the container. Don't forget to specify it in the master.conf as well!
To generate a keypair just execute ssh-keygen -t rsa
and follow the instructions. You'll find your keypair beneath ~/.ssh.
Now install the public keys on the servers you want to backup, and the private key on this container.
- Initialize new vault
time dirvish --init --vault name_of_vault