
barcus/bareos-director
提供Bareos的镜像,包含以下模块:
| 模块 | 构建状态 | Ubuntu大小 | Alpine大小 | 拉取地址 |
|---|---|---|---|---|
| Director | ||||
| 存储守护进程 | ||||
| 客户端/文件守护进程 | ||||
| Web界面 | ||||
| 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-alpinebareos-api
21-alpine、21、alpine、latest各组件需在独立容器中运行,并通过docker-compose链接,详见下文示例。
声明环境变量或复制.env.dist为.env并调整值,所有密码应在.env中定义(生产环境建议不使用默认密码)。确保更新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+ | |
| alpine-v2/mysql | v3.7+ | v18.06.0+ | |
| ubuntu/mysql | v3+ | v1.13.0+ | |
| ubuntu/pgsql | v3+ | v1.13.0+ |
:file_folder: 上述文件默认将数据存储在/data/(bareos|mysql|pgsql)目录。
打开[***],登录凭据:
<BAREOS_WEBUI_PASSWORD>(在.env中定义)bashdocker exec -it bareos-dir bconsole
bashcurl -X 'POST' \ '[***] \ -H 'accept: application/json' \ -H 'Content-Type: application/x-www-form-urlencoded' \ -d 'grant_type=&username=admin&password=你的WebUI密码&scope=&client_id=&client_secret='
返回示例:
json{ "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...", "token_type": "bearer" }
bashcurl -X 'GET' \ '[***] \ -H 'accept: application/json' \ -H 'Authorization: Bearer 上述access_token'
访问[***]查看指标,需由Prometheus抓取。更多信息见Bareos exporter。
详细配置与使用说明参见Bareos官方文档。
Bareos ≥21.0.0不再支持MySQL,需使用Bareos 20迁移现有MySQL目录:
:warning: 需确保.env文件包含所有必要密码!
| 镜像类型 | Bareos版本 | 支持的PostgreSQL版本 |
|---|---|---|
| Ubuntu | v19 | v10及以下 |
| Ubuntu | v20+ | v12及以下 |
| Alpine | v19 | v13及以下 |
| Alpine | v20+ | v14及以下 |
使用postgresql-upgrade镜像迁移数据:
bashdocker run -t -i \ -e PG_NEW=目标版本(如12) \ -e PGUSER=管理员用户(如postgres) \ -v /旧数据目录:/pg_old/data \ -v /新数据目录:/pg_new/data \ barcus/postgresql-upgrade
迁移后使用新数据目录和对应PostgreSQL版本。
yamlversion: '3' services: bareos-dir: image: barcus/bareos-director:latest volumes: - <配置路径>:/etc/bareos - <数据路径>:/var/lib/bareos # MyCatalog备份必需 environment: - DB_HOST=bareos-db - DB_NAME=bareos - DB_USER=${DB_USER} - DB_PASSWORD=${DB_PASSWORD} - BAREOS_FD_PASSWORD=${BAREOS_FD_PASSWORD} - BAREOS_SD_PASSWORD=${BAREOS_SD_PASSWORD} - ADMIN_MAIL=*** # 管理员*** - SMTP_HOST=smtpd # SMTP容器名 # 可选通知配置 - WEBHOOK_NOTIFICATION=true # 启用Slack/***通知(禁用邮件) - WEBHOOK_TYPE=slack # 通知类型 - WEBHOOK_URL=通知URL depends_on: - bareos-db bareos-sd: image: barcus/bareos-storage:latest ports: - 9103:9103 volumes: - <配置路径>:/etc/bareos - <备份卷路径>:/var/lib/bareos/storage environment: - BAREOS_SD_PASSWORD=${BAREOS_SD_PASSWORD} bareos-fd: image: barcus/bareos-client:latest volumes: - <配置路径>:/etc/bareos - <数据路径>:/var/lib/bareos-director environment: - BAREOS_FD_PASSWORD=${BAREOS_FD_PASSWORD} - FORCE_ROOT=false # 是否以root运行 bareos-webui: image: barcus/bareos-webui:latest ports: - 8080:80 environment: - BAREOS_DIR_HOST=bareos-dir bareos-db: image: postgres:12 volumes: - <数据库路径>:/var/lib/postgresql/data environment: - POSTGRES_USER=${DB_ADMIN_USER} - POSTGRES_PASSWORD=${DB_ADMIN_PASSWORD} smtpd: image: namshi/smtp # SMTP服务
bashgit clone [***] cd bareos # 构建各组件 docker build -t director-pgsql:20-alpine director-pgsql/20-alpine docker build -t storage:20-alpine storage/20-alpine
GitHub仓库:
Docker Hub:barcus镜像库


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