Skip to content

doriandu45/areca-backup-docker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 

Repository files navigation

Areca backup WebGUI for Docker

A simple areca backup client built into a Docker container Areca backup is an old (not updated since 2015) but simple backup client that still works today

Why?

Due to its nature, Areca does everything client-side since it only connects to sftp or ftp servers. By running a client directly on your NAS, you can easily merge backups for example without having to download 50+ GiB, then upload them back, which is handy if you are doing this over the Internet (in my case, this would take ages with my poor 8 Mb/s upload speed). The process can also be done in the background, simply start the process and close the page. Obviously, by using docker binds, you can also do classical backups from this container if you want

What's included?

This container includes OpenJDK 11, Areca and also a newer Jsch lib since the included one does not support most recent SSH standards. For the WebUI, this docker uses this base

Building the image

First of all, you need to build the image. You just simply need to clone the repo, and then run

docker build <path_to_the_repo_folder> --tag areca-backup-docker

Then simply run the docker with

docker run -p 5800:5800 areca-backup-docker

Then you will be able to access the WebGUI by opening http://[HOST IP ADDR]:5800 in your web browser

Container configuration

Ports

Here is the list of ports used by container. They can be mapped to the host via the -p <HOST_PORT>:<CONTAINER_PORT> parameter. The port number inside the container cannot be changed, but you are free to use any port on the host side.

Port Mapping to host Description
5800 Mandatory Port used to access the application's GUI via the web interface.
5900 Optional Port used to access the application's GUI via the VNC protocol. Optional if no VNC client is used.

Storage

The areca workspace is stored under /config/.areca It is recomended to bind the /config folder to your host filesystem to easily import or export areca configuration

Environment variables

The environment variables are the same as the base image. Here is a copy of the README of this container, for more information, please read the whole documentation:

Variable Description Default
APP_NAME Name of the application. Areca backup
USER_ID ID of the user the application runs as. See User/Group IDs to better understand when this should be set. 1000
GROUP_ID ID of the group the application runs as. See User/Group IDs to better understand when this should be set. 1000
SUP_GROUP_IDS Comma-separated list of supplementary group IDs of the application. (unset)
UMASK Mask that controls how file permissions are set for newly created files. The value of the mask is in octal notation. By default, this variable is not set and the default umask of 022 is used, meaning that newly created files are readable by everyone, but only writable by the owner. See the following online umask calculator: http://wintelguy.com/umask-calc.pl (unset)
TZ [TimeZone] of the container. Timezone can also be set by mapping /etc/localtime between the host and the container. Etc/UTC
KEEP_APP_RUNNING When set to 1, the application will be automatically restarted if it crashes or if a user quits it. 0
APP_NICENESS Priority at which the application should run. A niceness value of -20 is the highest priority and 19 is the lowest priority. By default, niceness is not set, meaning that the default niceness of 0 is used. NOTE: A negative niceness (priority increase) requires additional permissions. In this case, the container should be run with the docker option --cap-add=SYS_NICE. (unset)
TAKE_CONFIG_OWNERSHIP When set to 1, owner and group of /config (including all its files and subfolders) are automatically set during container startup to USER_ID and GROUP_ID respectively. 1
CLEAN_TMP_DIR When set to 1, all files in the /tmp directory are deleted during the container startup. 1
DISPLAY_WIDTH Width (in pixels) of the application's window. 1280
DISPLAY_HEIGHT Height (in pixels) of the application's window. 768
SECURE_CONNECTION When set to 1, an encrypted connection is used to access the application's GUI (either via a web browser or VNC client). See the Security section for more details. 0
VNC_PASSWORD Password needed to connect to the application's GUI. See the VNC Password section for more details. (unset)
X11VNC_EXTRA_OPTS Extra options to pass to the x11vnc server running in the Docker container. WARNING: For advanced users. Do not use unless you know what you are doing. (unset)
ENABLE_CJK_FONT When set to 1, open-source computer font WenQuanYi Zen Hei is installed. This font contains a large range of Chinese/Japanese/Korean characters. 0

User/Group IDs

When using data volumes (-v flags), permissions issues can occur between the host and the container. For example, the user within the container may not exists on the host. This could prevent the host from properly accessing files and folders on the shared volume.

To avoid any problem, you can specify the user the application should run as.

This is done by passing the user ID and group ID to the container via the USER_ID and GROUP_ID environment variables.

To find the right IDs to use, issue the following command on the host, with the user owning the data volume on the host:

id <username>

Which gives an output like this one:

uid=1000(myuser) gid=1000(myuser) groups=1000(myuser),4(adm),24(cdrom),27(sudo),46(plugdev),113(lpadmin)

The value of uid (user ID) and gid (group ID) are the ones that you should be given the container.

About

A WebGUI docker for areca backup

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published