diff --git a/bareos-server-set.json b/bareos-server-set.json new file mode 100644 index 00000000..cfc2a04a --- /dev/null +++ b/bareos-server-set.json @@ -0,0 +1,162 @@ +{ + "BareOS-server-set": { + "description": "BareOS Director/Catalogue/Storage server set. A comprehensive network-based open-source backup and recovery solution for all major operating systems.

Based on custom docker images: https://hub.docker.com/u/barcus/, available for amd64 and arm64 architecture.

", + "version": "0.0.1", + "website": "https://www.bareos.org/", + "container_links": { + "bareos-director": [ + { + "name": "bareos-director-to-db", + "source_container": "bareos-db" + }, + { + "name": "bareos-director-to-storage", + "source_container": "bareos-storage" + }, + { + "name": "bareos-director-to-webui", + "source_container": "bareos-webui" + } + ] + }, + "containers": { + "bareos-db": { + "image": "postgres", + "tag": "14", + "launch_order": 1, + "volumes": { + "/var/lib/postgresql/data": { + "description": "BareOS 'Catalog' (Postgres DB) Share.", + "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-director": { + "image": "barcus/bareos-director", + "tag": "latest", + "launch_order": 2, + "volumes": { + "/etc/bareos": { + "description": "BareOS 'Director' configuration Share.", + "label": "'Director' config [e.g. bareos-dir-config]" + }, + "/var/lib/bareos": { + "description": "BareOS Catalog-Backup Share", + "label": "Catalog-backup data [e.g. bareos-catalog-backup]" + } + }, + "ports": { + "9101": { + "description": "BareOS '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 `bareos` user password" + }, + "BAREOS_WEBUI_PASSWORD": { + "description": "Set BareOS Web-UI 'admin' user password.", + "label": "Web-UI 'admin' user's password" + } + }, + "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" + ] + ] + }, + "bareos-storage": { + "image": "barcus/bareos-storage", + "tag": "latest", + "launch_order": 3, + "volumes": { + "/etc/bareos": { + "description": "BareOS 'Storage' configuration Share.", + "label": "'Storage' config [e.g. bareos-storage-config]" + }, + "/var/lib/bareos/storage": { + "description": "BareOS 'Storage' Share for all backups.", + "label": "Backups data [e.g. bareos-backups]" + } + }, + "ports": { + "9103": { + "description": "BareOS 'Storage' communications port.", + "host_default": 9103, + "label": "Storage port [must be 9103]", + "protocol": "tcp", + "ui": false + } + } + }, + "bareos-webui": { + "image": "barcus/bareos-webui", + "tag": "latest", + "launch_order": 4, + "volumes": { + "/etc/bareos-webui": { + "description": "BareOS 'WebUI' configuration Share.", + "label": "'WebUI' config [e.g. bareos-webui-config]" + } + }, + "ports": { + "9100": { + "description": "BareOS Web Interface.", + "host_default": 9100, + "label": "WebUI port [e.g. 9100]", + "protocol": "tcp", + "ui": true + } + }, + "opts": [ + [ + "-e", + "SERVER_STATS=yes" + ] + ] + } + } + } +} diff --git a/root.json b/root.json index 28c8fa71..bd6828ed 100644 --- a/root.json +++ b/root.json @@ -1,4 +1,5 @@ { + "BareOS-server-set": "bareos-server-set.json", "Bitcoin": "bitcoind.json", "Booksonic": "booksonic.json", "Collabora Online": "collabora-online.json",