diff --git a/bareos-backup-server.json b/bareos-backup-server.json new file mode 100644 index 00000000..051fb267 --- /dev/null +++ b/bareos-backup-server.json @@ -0,0 +1,199 @@ +{ + "Bareos-backup-server": { + "description": "Network-based open-source backup and recovery for all major operating systems. All-in-one Director/Catalog/Storage and Director-local (Catalog backup) File services.
Before install run: groupadd --system --gid 105 bareos
&& useradd --system --uid 105 --comment 'bareos' --home-dir /var/lib/bareos -g bareos -G disk,tape --shell /bin/false bareos
Based on custom docker images from the Rockstor maintainers, available for amd64 architecture only.
", + "ui": { + "slug": "bareos-webui" + }, + "version": "0.0.1", + "website": "https://www.bareos.org/", + "container_links": { + "bareos-dir": [ + { + "name": "bareos-dir-to-db", + "source_container": "bareos-db" + }, + { + "name": "bareos-dir-to-storage", + "source_container": "bareos-storage" + }, + { + "name": "bareos-dir-to-file", + "source_container": "bareos-fd" + }, + { + "name": "bareos-dir-to-webui", + "source_container": "bareos-webui" + } + ] + }, + "containers": { + "bareos-db": { + "image": "postgres", + "tag": "14", + "launch_order": 1, + "volumes": { + "/var/lib/postgresql/data": { + "description": "'Catalog' storage (Postgres DB).", + "label": "'Catalog' data [e.g. bareos-catalog]" + } + }, + "environment": { + "POSTGRES_PASSWORD": { + "description": "Set password for `postgres` super-user.", + "label": "'postgres' super-user password" + } + }, + "opts": [ + [ + "-e", + "POSTGRES_INITDB_ARGS=--encoding=SQL_ASCII" + ] + ] + }, + "bareos-dir": { + "image": "ghcr.io/phillxnet/bareos-director", + "tag": "main", + "launch_order": 2, + "uid": 105, + "volumes": { + "/etc/bareos": { + "description": "'Director' configuration (bareos:bareos).", + "label": "'Director' config [e.g. bareos-dir-config]" + }, + "/var/lib/bareos": { + "description": "'Director' data/state (bareos:bareos).", + "label": "'Director' data [e.g. bareos-dir-data]" + } + }, + "ports": { + "9101": { + "description": "'Director' communications port.", + "host_default": 9101, + "label": "'Director' port [must be 9101]", + "protocol": "tcp", + "ui": false + } + }, + "environment": { + "DB_ADMIN_PASSWORD": { + "description": "Re-enter `postgres` super-user password.", + "label": "Re-enter 'postgres' super-user password" + }, + "DB_PASSWORD": { + "description": "Set password for the `bareos` DB user.", + "label": "Catalog's `bareos` user password" + }, + "BAREOS_SD_PASSWORD": { + "description": "Set 'Storage' service password.", + "label": "'Storage' password" + }, + "BAREOS_FD_PASSWORD": { + "description": "Set Director's local 'File'/Client service (bareos-fd) password.", + "label": "Director's local 'File' password" + }, + "BAREOS_WEBUI_PASSWORD": { + "description": "Set BareOS Web-UI 'admin' user password.", + "label": "Web-UI 'admin' user's password" + }, + "SMTP_HOST": { + "description": "Set email relay hostname or IP - example uses Rockstor's Email Alerts.", + "label": "SMTP relay host [e.g. Rockstor's IP]" + } + }, + "opts": [ + [ + "-e", + "DB_INIT=true" + ], + [ + "-e", + "DB_NAME=bareos" + ], + [ + "-e", + "DB_USER=bareos" + ], + [ + "-e", + "DB_ADMIN_USER=postgres" + ], + [ + "-e", + "DB_HOST=bareos-db" + ], + [ + "-e", + "DB_PORT=5432" + ], + [ + "-e", + "BAREOS_SD_HOST=bareos-storage" + ], + [ + "-e", + "BAREOS_FD_HOST=bareos-fd" + ] + ] + }, + "bareos-storage": { + "image": "ghcr.io/phillxnet/bareos-storage", + "tag": "main", + "launch_order": 3, + "uid": 105, + "volumes": { + "/var/lib/bareos/storage": { + "description": "'Storage' for all backups (bareos:bareos).", + "label": "Backups data [e.g. bareos-backups]" + } + }, + "ports": { + "9103": { + "description": "'Storage' communications port.", + "host_default": 9103, + "label": "'Storage' port [must be 9103]", + "protocol": "tcp", + "ui": false + } + }, + "opts": [ + [ + "--volumes-from", + "bareos-dir" + ] + ] + }, + "bareos-fd": { + "image": "ghcr.io/phillxnet/bareos-file", + "tag": "main", + "launch_order": 4, + "uid": 105, + "opts": [ + [ + "--volumes-from", + "bareos-dir" + ] + ] + }, + "bareos-webui": { + "image": "ghcr.io/phillxnet/bareos-webui", + "tag": "main", + "launch_order": 5, + "volumes": { + "/etc/bareos-webui": { + "description": "'WebUI' configuration.", + "label": "'WebUI' config [e.g. bareos-webui]" + } + }, + "ports": { + "80": { + "description": "BareOS Web Interface.", + "host_default": 9100, + "label": "WebUI port [e.g. 9100]", + "protocol": "tcp", + "ui": true + } + } + } + } + } +} diff --git a/root.json b/root.json index 3abad332..6ba4477c 100644 --- a/root.json +++ b/root.json @@ -1,6 +1,7 @@ { "2FAuth": "2FAuth.json", "Airsonic Advanced": "airsonic-advanced.json", + "Bareos-backup-server": "bareos-backup-server.json", "Booksonic": "booksonic.json", "Calibre": "calibre.json", "Collabora Online": "collabora-online.json",