Deployment Overview of Proxmox Backup Server on Server¶
Prerequisites and Basic Requirements¶
To ensure a successful deployment, the following requirements must be met:
-
Operating System: Debian 12 (Bookworm) is required for optimal compatibility.
-
Privileges: Root or sudo access is necessary to perform package installations and service management.
-
Dependencies: The installation process requires
curl,wget,ca-certificates, andgnupg. -
Kernel Headers: For Debian 12,
linux-headers-amd64is installed to support system operations.
FQDN of the final panel on the hostkey.in domain¶
The application is accessible via a specific subdomain template within the hostkey.in zone.
| Parameter | Value |
|---|---|
| Prefix | proxmox-backup-server |
| Domain | hostkey.in |
| Full template | proxmox-backup-server{Server_ID_from_Invapi}.hostkey.in |
File and Directory Structure¶
The following directories and files are used for configuration and data management:
-
/etc/apt/sources.list.d/pbs.list: Contains the Proxmox Backup Server repository information. -
/etc/apt/trusted.gpg.d/proxmox-release.gpg: Stores the GPG key for the Proxmox repository. -
/root/nginx/compose.yml: The Docker Compose configuration file for the Nginx reverse proxy. -
/data/nginx/user_conf.d/: Contains Nginx configuration files, including the specific site configuration forproxmox-backup-server{Server_ID_from_Invapi}.hostkey.in.conf. -
/data/nginx/nginx-certbot.env: Environment variables used by the Nginx container.
Application installation process¶
The installation of Proxmox Backup Server is performed via the system package manager using the following steps:
-
System Preparation: The system repositories are updated, and existing enterprise repository files (if any) are removed to prevent conflicts.
-
Repository Configuration:
-
The Proxmox GPG key is downloaded to
/etc/apt/trusted.gpg.d/proxmox-release.gpg. -
The
pbs-no-subscriptionrepository is added to the system sources list. -
Package Installation: The
proxmox-backup-servermeta-package is installed viaapt. -
Dependency Setup: On Debian 12,
linux-headers-amd64is installed to ensure kernel compatibility.
Access Rights and Security¶
Security is managed through the following mechanisms:
-
Reverse Proxy: An Nginx container acts as a reverse proxy to handle incoming traffic.
-
SSL/TLS: SSL certificates are managed via Certbot within the Nginx container setup to secure communications over HTTPS.
-
Firewall/Ports: The application listens on internal port
8007for local communication, while external access is routed through standard web ports.
Docker Containers and Their Deployment¶
The deployment utilizes a Docker container to manage SSL certificates and reverse proxying:
Nginx-Certbot Container
-
Image:
jonasal/nginx-certbot:latest -
Ports: Uses
hostnetwork mode (accesses services on127.0.0.1). -
Volumes:
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d -
Environment Variables: Configured via
/data/nginx/nginx-certbot.env. -
Restart Policy:
unless-stopped
Application Update Instructions¶
To update the Proxmox Backup Server application, use the standard package manager commands:
Location of configuration files and data¶
The primary locations for application data and configurations are:
-
Repository Config:
/etc/apt/sources.list.d/pbs.list -
Nginx Site Configs:
/data/nginx/user_conf.d/ -
Docker Compose File:
/root/nginx/compose.yml
Available ports for connection¶
The following ports are utilized by the application stack:
| Port | Usage |
|---|---|
443 (External) | Secure HTTPS access via Nginx proxy |
8007 (Internal) | Proxmox Backup Server local service port |