
barcus/bareos-storage
本镜像包提供Bareos的各组件镜像:
| 模块 | 构建状态 | Ubuntu镜像大小 | Alpine镜像大小 | 拉取 |
|---|---|---|---|---|
| Director | ![Size badge][size-latest-director-png] | ![Size badge][size-alpine-director-png] | [][docker-url-dir] | |
| 存储守护进程(Storage Daemon) | ![Size badge][size-latest-storage-png] | ![Size badge][size-alpine-storage-png] | [][docker-url-sd] | |
| 客户端/文件守护进程(Client/File Daemon) | ![Size badge][size-latest-client-png] | ![Size badge][size-alpine-client-png] | [][docker-url-fd] | |
| webUI | ![Size badge][size-latest-webui-png] | ![Size badge][size-alpine-webui-png] | [][docker-url-ui] | |
| API | ![Size badge][size-latest-api-png] | [][docker-url-api] |
镜像基于Alpine构建,标签信息见下文。
bareos-director (dir)
21-alpine-pgsql, 21-alpine, alpine, latest20-alpine-pgsql, 20-alpinebareos-client (fd) - bareos-storage (sd) - bareos-webui
21-alpine, alpine, latest20-alpine, latestbareos-api
21-alpine, 21, alpine, latestBareos Director需要:
Bareos Webui需要:
Bareos客户端(fd)和存储守护进程(sd)无依赖。
各组件需在独立容器中运行,并通过docker-compose链接,详见下方示例。
声明环境变量,或复制.env.dist为.env并调整值。
所有密码应在.env文件中定义。生产环境建议不要使用.env.dist中的默认密码。
最后,确保更新docker-compose文件中的变量,如ADMIN_MAIL或DB_USER。
bashdocker-compose -f /path/to/your/docker-compose.yml up -d
Alpine和Ubuntu基础的docker-compose文件如下:
| 文件 | compose版本 | docker版本 | 最新构建状态 |
|---|---|---|---|
| alpine-v1/mysql | v3+ | v1.13.0+ | ![run-compose][run-compose-png] |
| alpine-v2/mysql | v3.7+ | v18.06.0+ | ![run-compose][run-compose-png] |
| ubuntu/mysql | v3+ | v1.13.0+ | ![run-compose][run-compose-png] |
| ubuntu/pgsql | v3+ | v1.13.0+ | ![run-compose][run-compose-png] |
:file_folder: 这些docker-compose文件配置将数据存储在/data/(bareos|mysql|pgsql)目录。
容器启动后,可通过WebUI、CLI或API访问Bareos。
在浏览器中打开[***],登录信息:
用户:admin / 密码:<BAREOS_WEBUI_PASSWORD>(在.env中定义)
bashdocker exec -it bareos-dir bconsole
(需Bareos 20+及Bareos命名控制台)
在浏览器中打开[***],点击"Authorize"登录。
或使用curl示例:
获取令牌(返回包含token的JSON对象):
bashcurl -X 'POST' \ '[***] \ -H 'accept: application/json' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=&username=admin&password=ThisIsMySecretUIp4ssw0rd&scope=&client_id=&client_secret='
使用令牌读取所有客户端配置:
bashcurl -X 'GET' \ '[***] \ -H 'accept: application/json' \ -H 'Authorization: Bearer <your_token>'
在浏览器中打开[***]查看可用指标,指标应由Prometheus服务器抓取。更多信息见Bareos exporter。
更多配置和使用信息请参阅Bareos官方文档。
Bareos 21.0.0及以上版本不再支持MySQL后端,需使用Bareos 20将MySQL目录迁移至PostgreSQL。先升级到Bareos 20,再使用此docker-compose文件备份并迁移数据。若PostgreSQL数据库为空,将自动创建。
:warning: 需包含密码的.env文件!
使用postgresql-upgrade镜像迁移数据:
bashdocker run -t -i \ -e PG_NEW=12 \ -e PGUSER=postgres \ -v /data/pgsql/data:/pg_old/data \ -v /data/pgsql-new/data:/pg_new/data \ barcus/postgresql-upgrade
迁移后使用新目录/data/pgsql-new/data及对应PostgreSQL版本。
ymlversion: '3' services: bareos-dir: image: barcus/bareos-director:latest volumes: - <BAREOS_CONF_PATH>:/etc/bareos - <BAREOS_DATA_PATH>:/var/lib/bareos environment: - DB_HOST=bareos-db - DB_USER=bareos - DB_PASSWORD=${DB_PASSWORD} - BAREOS_FD_PASSWORD=${BAREOS_FD_PASSWORD} - BAREOS_SD_PASSWORD=${BAREOS_SD_PASSWORD} - ADMIN_MAIL=*** depends_on: - bareos-db bareos-sd: image: barcus/bareos-storage:latest ports: - 9103:9103 volumes: - <BAREOS_BKP_VOLUME_PATH>:/var/lib/bareos/storage environment: - BAREOS_SD_PASSWORD=${BAREOS_SD_PASSWORD} bareos-fd: image: barcus/bareos-client:latest volumes: - <BAREOS_DATA_PATH>:/var/lib/bareos-director environment: - BAREOS_FD_PASSWORD=${BAREOS_FD_PASSWORD} bareos-webui: image: barcus/bareos-webui:latest ports: - 8080:80 environment: - BAREOS_DIR_HOST=bareos-dir bareos-db: image: postgres:12 volumes: - <DB_DATA_PATH>:/var/lib/postgresql/data environment: - POSTGRES_PASSWORD=${DB_ADMIN_PASSWORD}
bashgit clone [***] cd bareos docker build -t director-pqsl:20-alpine director-pgsql/20-alpine docker build -t storage:20-alpine storage/20-alpine
GitHub仓库:
Docker Hub:





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务