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 required to perform package installations and service management.
-
Dependencies: The installation process requires
curl,wget,ca-certificates, andgnupg. -
Kernel Headers: For ZFS support,
linux-headers-amd64must be installed.
FQDN of the final panel on the hostkey.in domain¶
The application is accessible via a specific subdomain template within the hostkey.in domain.
| Parameter | Value |
|---|---|
| Prefix | proxmox-backup-server |
| Domain | hostkey.in |
| Full template | proxmox-backup-server{Server_ID}.hostkey.in |
Application installation process¶
The application is installed directly on the host system using the Debian package management system. The following steps are performed during installation:
-
System Preparation: The system repositories are updated, and existing enterprise repository files (if any) are removed to prevent authentication errors.
-
Repository Configuration:
-
The Proxmox PBS GPG key is added to
/etc/apt/trusted.gpg.d/proxmox-release.gpg. -
The
pbs-no-subscriptionrepository is added to the system sources via/etc/apt/sources.list.d/pbs.list. -
Package Installation:
-
The
proxmox-backup-servermeta-package is installed. -
Additional kernel modules and headers, such as
zfs-dkmsandlinux-headers-amd64, are installed to support advanced storage features. -
Service Initialization: The
proxmox-backupservice is started and enabled to ensure it launches automatically upon system boot.
Docker Containers and Their Deployment¶
The deployment utilizes a Docker container to manage SSL certificates and reverse proxy functionality via Nginx.
| Container Name | Image | Ports (Host) | Volumes | Restart Policy |
|---|---|---|---|---|
nginx | jonasal/nginx-certbot:latest | Host Network Mode | - nginx_secrets:/etc/letsencrypt- /data/nginx/user_conf.d:/etc/nginx/user_conf.d | unless-stopped |
Note: The Nginx container operates using the host network mode to facilitate seamless integration with the local services.
Custom Scripts and Additional Setup¶
The deployment includes a configuration step for the reverse proxy to enable secure access via SSL:
-
Directory Creation: A directory is created at
/root/nginxto manage the Docker Compose configuration. -
Proxy Configuration:
-
A
compose.ymlfile is generated in/root/nginx/. -
The Nginx configuration files located in
/data/nginx/user_conf.d/are modified to include aproxy_passdirective pointing to the internal application port (http://127.0.0.1:8007).
Application Update Instructions¶
To update the Proxmox Backup Server, perform the following steps:
-
System Package Update:
-
Docker Proxy Update: To update the Nginx/Certbot container, navigate to the configuration directory and run:
Location of configuration files and data¶
| Component | Path |
|---|---|
| Proxmox Repository List | /etc/apt/sources.list.d/pbs.list |
| Nginx User Configurations | /data/nginx/user_conf.d/ |
| Docker Compose (Proxy) | /root/nginx/compose.yml |
| SSL Certificates | Managed via nginx_secrets volume |
Available ports for connection¶
-
Internal Application Port:
8007(Used by the Nginx proxy). -
External HTTPS Port:
443(Standard secure web access).