AI Decision System
Replayable, offline-verifiable records for AI-assisted go/no-go decisions: experiment promotions, typed model answers and human-approved actions.
翻譯準備中
The Proxmox Backup Client Manager (PBCM) is a centralized management system for controlling multiple proxmox-backup-client instances across your infrastructure.
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
The Proxmox Backup Client Manager (PBCM) is a centralized management system for controlling multiple proxmox-backup-client instances across your infrastructure. It consists of a lightweight Node.js agent running on your clients and a central Fastify/React-based server providing a dashboard and API.檢視完整 README ↗The Proxmox Backup Client Manager (PBCM) is a centralized management system for controlling multiple proxmox-backup-client instances across your infrastructure. It consists of a lightweight Node.js agent running on your clients and a central Fastify/React-based server providing a dashboard and API.
The full documentation is published at
stefgo.github.io/proxmox-backup-client-manager; its sources live in the docs/ directory:
config.yaml key and environment variable.The easiest way to get the server running is using Docker Compose. A production-ready example compose.yaml could look like this:
services:
pbcm-server:
container_name: pbcm-server
# The image is multi-platform and supports both x86_64 and ARM64
image: ghcr.io/stefgo/pbcm-server:latest
ports:
- "3000:3000"
volumes:
- ./server-data:/app/server/backend/data
- ./server-config.yaml:/app/server/config.yaml
restart: unless-stopped
environment:
- NODE_ENV=production
server/config.example.yaml to server-config.yaml — the file has to exist before the container starts, or Docker creates a directory in its place.docker compose up -dhttp://localhost:3000 (default credentials: admin / admin — change the password).Full walkthrough: Installing the Server.
For the client agent, you also need to pass the host's files that you wish to backup, as well as the configuration.
services:
pbcm-client:
container_name: pbcm-client
# Use pbcm-client:latest for x86_64 or pbcm-client-arm64:latest for ARM64 (e.g. Raspberry Pi)
image: ghcr.io/stefgo/pbcm-client:latest
ports:
# The local Web UI, needed once to register the agent
- "3001:3001"
# Root in the container keeps only what a backup and a restore need
cap_drop:
- ALL
cap_add:
- DAC_READ_SEARCH
- DAC_OVERRIDE
- CHOWN
- FOWNER
- FSETID
- MKNOD
- SETFCAP
security_opt:
- no-new-privileges:true
read_only: true
tmpfs:
- /tmp
volumes:
- ./client-config.yaml:/app/client/config.yaml
- ./client-data:/app/client/data
# Mount the host root to allow backing up host files
- /:/mnt/host:ro
restart: unless-stopped
environment:
- NODE_ENV=production
proxmox-backup-client is part of the image — the host needs no Proxmox packages.
client/config.example.yaml to client-config.yaml. The agent's identity is issued by the server at registration and kept in its data volume, not in this file.docker compose up -d, then read the setup PIN from docker compose logs pbcm-client.http://<this-host>:3001/register and enter the server URL, the registration token the dashboard showed when you added the client, and the PIN.Note that a job's source paths are container paths: with the mount above, /etc is configured as /mnt/host/etc.
Full walkthrough, including outbound mode: Installing a Client Agent.
Contributions are welcome! Please feel free to submit a Pull Request. For major changes, please open an issue first to discuss what you would like to change.
This is an unofficial, community-driven project. It is not affiliated with, endorsed by, or associated with Proxmox Server Solutions GmbH. "Proxmox" is a registered trademark of Proxmox Server Solutions GmbH.
This project is licensed under the MIT License - see the LICENSE file for details.