All Projects → barcus → Bareos

barcus / Bareos

Licence: mit
Docker image for Bareos

Programming Languages

shell
77523 projects

Projects that are alternatives of or similar to Bareos

Please Contain Yourself
A Docker tutorial written for people who don't actually know Docker already.
Stars: ✭ 385 (+420.27%)
Mutual labels:  docker-image, docker-compose
Dockerized lara
Build your Laravel App with Redis - Mongodb - MariaDB - Nginx - php7 - zsh
Stars: ✭ 9 (-87.84%)
Mutual labels:  docker-image, docker-compose
Trashemail
A hosted disposable email telegram bot; Extremely privacy friendly; Proudly hosted for community.
Stars: ✭ 408 (+451.35%)
Mutual labels:  docker-image, docker-compose
Dockercheatsheet
🐋 Docker Cheat Sheet 🐋
Stars: ✭ 3,301 (+4360.81%)
Mutual labels:  docker-image, docker-compose
Leanote Dockerfile
docker-compose for leanote.
Stars: ✭ 49 (-33.78%)
Mutual labels:  docker-image, docker-compose
Portainer
Making Docker and Kubernetes management easy.
Stars: ✭ 20,434 (+27513.51%)
Mutual labels:  docker-image, docker-compose
Aria2 Pro Docker
Aria2 Pro | A perfect Aria2 Docker image | 更好用的 Aria2 Docker 容器镜像
Stars: ✭ 802 (+983.78%)
Mutual labels:  docker-image, docker-compose
Lumen Microservice
Lumen on Docker - Skeleton project with Nginx, MySQL & PHP 7 | Aws ECS, Google Kubernates, Azure Container Engine
Stars: ✭ 183 (+147.3%)
Mutual labels:  docker-image, docker-compose
Docker Liferay Portal
Stars: ✭ 41 (-44.59%)
Mutual labels:  docker-image, docker-compose
Magento2 Varnish Redis Ssl Docker Compose
Deploy Magento2 with Varnish Cache and Redis with SSL termination using Docker-compose tool
Stars: ✭ 37 (-50%)
Mutual labels:  docker-image, docker-compose
Dockerfiles
lots of dockerfiles, based on alpine
Stars: ✭ 69 (-6.76%)
Mutual labels:  docker-image, docker-compose
Poco
Poco will help you to organise and manage Docker, Docker-Compose, Kubernetes, Openshift projects of any complexity using simple YAML config files to shorten the route from finding your project to initialising it in your local environment.
Stars: ✭ 66 (-10.81%)
Mutual labels:  docker-image, docker-compose
docker-haproxy-certbot
Dockerized HAProxy with Let's Encrypt certificates automatic renewal
Stars: ✭ 28 (-62.16%)
Mutual labels:  docker-compose, docker-image
Swirl
A web UI for Docker, focused on swarm cluster.
Stars: ✭ 332 (+348.65%)
Mutual labels:  docker-image, docker-compose
mongodb-replica-set
Docker setting for mongodb replica set
Stars: ✭ 21 (-71.62%)
Mutual labels:  docker-compose, docker-image
Netbox Docker
🐳 Docker Image of NetBox
Stars: ✭ 628 (+748.65%)
Mutual labels:  docker-image, docker-compose
Jekyll Serve
Jekyll in a Docker Container For Easy SSG Development
Stars: ✭ 164 (+121.62%)
Mutual labels:  docker-image, docker-compose
Docker Postfix
Simple SMTP server / postfix null relay host for your Docker and Kubernetes containers. Based on Alpine Linux.
Stars: ✭ 163 (+120.27%)
Mutual labels:  docker-image, docker-compose
Docker Mediawiki
🐳 Dockerized Femiwiki's mediawiki server
Stars: ✭ 33 (-55.41%)
Mutual labels:  docker-image, docker-compose
Scala Graalvm Docker
Docker images to build and generate native artifacts using GraalVM
Stars: ✭ 60 (-18.92%)
Mutual labels:  docker-image, docker-compose

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.x.x to 20.0.0

⚠️ MySQL/MariaDB backends deprecated since Bareos 19.0.0

⚠️ SQLite backend deprecated since Bareos 20.0.0

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

Tags

bareos-director (dir)

  • 20-ubuntu-mysql
  • 20-ubuntu-pqsql, 20-ubuntu, 20, ubuntu, latest
  • 19-ubuntu-mysql, 19-ubuntu, 19
  • 19-ubuntu-pqsql
  • 19-alpine-mysql, 19-alpine, alpine
  • 19-alpine-pgsql
  • 18-ubuntu-mysql, 18-ubuntu, 18
  • 18-ubuntu-pgsql
  • 18-alpine-mysql, 18-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

  • 20-ubuntu, 20, ubuntu, latest
  • 19-ubuntu, 19
  • 19-alpine, alpine
  • 18-ubuntu, 18
  • 18-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 (MySQL deprecated since Bareos 19.0.0)
  • SMTP Daemon as mail router (for reporting)

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!
      # Optional you can get backup notification via Slack or Telegram
      - WEBHOOK_NOTIFICATION=true # true or false if set to true email notification gets disabled
      - WEBHOOK_TYPE=slack # choose slack or telegram
      - WEBHOOK_URL= # set the slack or telegram URL
      - WEBHOOK_CHAT_ID= # for telegram only set the <chat_id>
    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
      - FORCE_ROOT=false

  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)
  • WEBHOOK_NOTIFICATION=true # true or false if set to true email notification gets disabled
  • WEBHOOK_TYPE=slack # choose slack or telegram
  • WEBHOOK_URL= # set the slack or telegram URL (ex slack: https://hooks.slack.com/services/TXXXXXXXXXX/XXXXXXXXXXX/Cbzi0lUVjKsjiM6kjZL2eQAW)
  • WEBHOOK_CHAT_ID= # for telegram only set the 'chat_id'

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
  • FORCE_ROOT must be true to run Bareos with root permissions

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 !

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].