Skip to content

euromah/bareos

This branch is 114 commits behind barcus/bareos:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

7965d8d Β· Apr 24, 2020
Mar 13, 2020
Mar 13, 2020
Apr 23, 2020
Apr 24, 2020
Mar 13, 2020
Mar 13, 2020
Mar 11, 2020
Dec 7, 2016
Mar 14, 2020
Mar 13, 2020
Mar 14, 2020
Mar 7, 2020
Mar 7, 2020
Mar 7, 2020
Apr 24, 2020
Mar 7, 2020

Repository files navigation

bareos

License badge Based OS Based OS Badge amd64 Badge arm64

About

This package provides images for Bareos :

module build size ubuntu size alpine pull
Director Actions Status Size badge Size badge Docker badge
Storage Daemon Actions Status Size badge Size badge Docker badge
Client/File Daemon Actions Status Size badge Size badge Docker badge
webUI Actions Status Size badge Size badge Docker badge

Images are based on Ubuntu or Alpine, check tags below

πŸ‘ Tested with Bareos 16.2, 17.2, 18.2 and 19.2

  • Ubuntu images for Bareos 16 and 17 are based on Xenial
  • Ubuntu images for Bareos 18+ are based on Bionic
  • Alpine images are available for linux/amd64 and linux/arm64/v8 platform

Tags

bareos-director (dir)

  • 19-ubuntu-mysql, 19-ubuntu, 19, ubuntu, latest
  • 19-ubuntu-pqsql
  • 18-ubuntu-mysql, 18-ubuntu, 18
  • 18-ubuntu-pgsql
  • 18-alpine-mysql, 18-alpine, alpine
  • 17-ubuntu-mysql, 17-ubuntu, 17
  • 17-ubuntu-pgsql
  • 17-alpine
  • 16-ubuntu-mysql, 16-ubuntu, 16
  • 16-ubuntu-pgsql

bareos-client (fd) - bareos-storage (sd) - bareos-webui

  • 19-ubuntu, 19, ubuntu, latest
  • 18-ubuntu, 18
  • 18-alpine, alpine
  • 17-ubuntu, 17
  • 17-alpine
  • 16-ubuntu, 16

Security advice

The default passwords inside the configuration files are created when building the docker image. Hence for production either build the image yourself using the sources from Github.

β­• Do not use this container for anything else, as passwords get expose to the Bareos containers.

Setup

Bareos Director requires :

  • PostgreSQL or MySQL as a catalog backend
  • SMTP Daemon as mail router (for reporting)

Curently, PostgreSQL is not available on Alpine images.

Bareos Webui requires (Alpine images only) :

  • PHP-FPM

Bareos Client (fd) and Storage (sd) have no depencies.

Each component have to run in an single container and must linked together through docker-compose, see exemple below

Requirements

Usage

docker-compose -f /path/to/your/docker-compose.yml up -d

docker-compose files are available for Alpine and Ubuntu based stack:

file compose docker latest build
alpine-v1/mysql v3+ v1.13.0+ run-compose
alpine-v2/mysql v3.7+ v18.06.0+ run-compose
ubuntu/mysql v3+ v1.13.0+ run-compose
ubuntu/pgsql v3+ v1.13.0+ run-compose

Remember to change your mail address in ADMIN_MAIL and maybe some passwords 😁

πŸ“ Those docker-compose file are configured to store data inside /data/(bareos|mysql|pgsql)

Finaly, when your containers are up and runing access Bareos through

  • WebUI :

Open http://your-docker-host:8080 (user: admin / pass: <BAREOS_WEBUI_PASSWORD>)

  • bconsole :

Run docker exec -it bareos-dir bconsole

Build

Docker-compose file

Build your own docker-compose file with this template :

version: '3'
services:
  bareos-dir:
    image: barcus/bareos-director:latest #latest dicector+mysql based on ubuntu
    volumes:
      - <BAREOS_CONF_PATH>:/etc/bareos
      - <BAREOS_DATA_PATH>:/var/lib/bareos #required for MyCatalog backup
    environment:
      - DB_PASSWORD=ThisIsMySecretDBp4ssw0rd
      - DB_HOST=bareos-db
      - DB_PORT=3306
      - BAREOS_FD_HOST=bareos-fd
      - BAREOS_SD_HOST=bareos-sd
      - BAREOS_FD_PASSWORD=ThisIsMySecretFDp4ssw0rd
      - BAREOS_SD_PASSWORD=ThisIsMySecretSDp4ssw0rd
      - BAREOS_WEBUI_PASSWORD=ThisIsMySecretUIp4ssw0rd
      - SMTP_HOST=smtpd
      - [email protected] #optional
      - [email protected] # Change me!
    depends_on:
      - bareos-db

  bareos-sd:
    image: barcus/bareos-storage:latest
    ports:
      - 9103:9103
    volumes:
      - <BAREOS_CONF_PATH>:/etc/bareos
      - <BAREOS_BKP_VOLUME_PATH>:/var/lib/bareos/storage
    environment:
      - BAREOS_SD_PASSWORD=ThisIsMySecretSDp4ssw0rd

  bareos-fd:
    image: barcus/bareos-client:latest
    volumes:
      - <BAREOS_CONF_PATH>:/etc/bareos
      - <BAREOS_DATA_PATH>:/var/lib/bareos-director #required for MyCatalog backup
    environment:
      - BAREOS_FD_PASSWORD=ThisIsMySecretFDp4ssw0rd

  bareos-webui:
    image: barcus/bareos-webui:latest
    ports:
      - 8080:80
    environment:
      - BAREOS_DIR_HOST=bareos-dir
      - SERVER_STATS=yes #optional enable apache server statistics
    volumes:
      - <BAREOS_CONF_PATH>:/etc/bareos-webui

  bareos-db:
    image: mysql:5.6
    volumes:
      - <DB_DATA_PATH>:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=ThisIsMySecretDBp4ssw0rd

  #bareos-db:
  #  image: postgres:9.3
  #  volumes:
  #    - <DB_DATA_PATH>:/var/lib/postgresql/data
  #  environment:
  #    - POSTGRES_PASSWORD=ThisIsMySecretDBp4ssw0rd

  smtpd:
    image: namshi/smtp

Bareos Director (bareos-dir)

  • <BAREOS_CONF_PATH> is the path to share your Director config folder from the host side (optional/recommended)
  • <BAREOS_DATA_PATH> is the path to share your Director data folder from the host side (recommended)
  • DB_PASSWORD must be same as Bareos Database section
  • SMTP_HOST is the name of smtp container
  • ADMIN_MAIL is your email address
  • SENDER_MAIL is the email address you want to use for send the email (optional, default ADMIN_MAIL value)

Bareos Storage Daemon (bareos-sd)

  • <BAREOS_CONF_PATH> is the path to share your Storage config folder from the host side (optional/recommended)
  • <BAREOS_BKP_VOLUME_PATH> is the path to share your data folder from the host side. (optional)
  • BAREOS_SD_PASSWORD must be same as Bareos Director section

Bareos Client/File Daemon (bareos-fd)

  • <BAREOS_CONF_PATH> is the path to share your Client config folder from the host side (optional/recommended)
  • <BAREOS_DATA_PATH> is the path to access Director data folder (recommended)
  • BAREOS_FD_PASSWORD must be same as Bareos Director section

Database MySQL or PostgreSQL (bareos-db)

Required as catalog backend, simply use the official MySQL/PostgreSQL image

  • <DB_DATA_PATH> is the path to share your MySQL/PostgreSQL data from the host side

Bareos webUI (bareos-webui)

  • <BAREOS_CONF_PATH> is the path to share your WebUI config folder from the host side. (optional)
  • default user is admin

⚠️ Remember variables *_HOST must be set with container name

Your own Docker images

Build your own Bareos images :

git clone https://github.com/barcus/bareos
cd bareos
docker build -t director-mysql:18-alpine director-mysql/18-alpine
docker build -t storage:18-alpine storage/18-alpine
docker build -t client:18-alpine client/18-alpine
docker build -t webui:18-alpine webui/18-alpine

Build your own Xenial base system image :

git clone https://github.com/rockyluke/docker-ubuntu
cd docker-ubuntu
./build.sh -d xenial

Thanks to @rockyluke :)

Links

For more information visit the Github repositories :

My Docker hub :

Enjoy !

Releases

No releases published

Packages

No packages published

Languages

  • Shell 57.4%
  • Dockerfile 42.6%