
bcleonard/proxmox-qdevice该Docker镜像用于为Proxmox集群部署外部qdevice,解决偶数节点集群的仲裁(quorum)问题。Proxmox集群通常需要奇数个节点以确保仲裁,当集群节点为偶数(如2个节点)时,外部qdevice可作为额外投票设备,使集群总投票数变为奇数,确保节点启动时能获得足够的仲裁票,避免因节点同时启动导致的服务无法启动问题。
注意:需在非Proxmox服务器虚拟实例的设备上运行此容器。
有关Proxmox集群、外部qdevice及配置使用的更多信息,请参考Proxmox官方文档。
corosync-data目录,实现配置在容器重启/重建间的持久化。适用于具有偶数个Proxmox服务器节点的集群(如2个节点),需解决以下问题:
请查阅项目Wiki获取最新的系统要求和前置条件。
该镜像支持通过Docker Compose或容器管理工具(如Portainer)部署。
修改docker-compose.yml文件,需确保以下配置项正确设置:
NEW_ROOT_PASSWORD:容器root用户的初始密码。corosync-data目录:挂载本地目录以持久化qdevice配置(避免容器重启后配置丢失)。hostname参数。parent:绑定macvlan的物理网络接口。ipv4_address:容器的IPv4地址。subnet:子网掩码。ip_range:IP地址范围。gateway:网关地址。执行以下命令启动容器:
bashdocker compose up -d
将docker-compose.yml内容复制到Portainer的"Stacks"功能中,点击部署即可。
已在以下环境中验证可用:
容器内安装并配置了sshd服务,允许root登录(与Proxmox默认配置一致)。启动时,若环境变量NEW_ROOT_PASSWORD存在,root密码将被设置为该变量的值。设置密码的方式如下:
NEW_ROOT_PASSWORD,该变量会传递至容器。docker-compose.yml中硬编码密码,可能导致密码泄露。若未设置NEW_ROOT_PASSWORD,可在容器启动后手动修改密码(容器重建后需重新设置):
bashsudo docker exec -it proxmox-qdevice /bin/bash root@proxmox-qdevice:/# passwd New password: Retype new password: passwd: password updated successfully root@proxmox-qdevice:/# exit
latest和beta标签的说明不建议在生产环境中使用latest(bcleonard/proxmox-qdevice、bcleonard/proxmox-qdevice:latest)或beta(bcleonard/proxmox-qdevice:beta)标签。
这些标签可能不指向master分支的最新提交,且不保证稳定性,使用可能导致不可控的更新(如非向后兼容版本或破坏性变更)。请始终显式指定所需版本,以确保部署稳定性。
在开发过程中,以下资源提供了重要参考:
项目Wiki提供了详细信息,可访问GitHub Wiki查看。






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