
Drupal
Enterprise-grade CMS for complex websites
Deploy Drupal in 3 Steps
Connect Your VPS
Add your server credentials to Server Compass
Select Drupal
Choose from our template library
Deploy & Configure
Fill in settings and click Deploy
Learn How to Deploy Drupal
Drupal CLI Deployment
Deploy Drupal the traditional way with SSH and Docker Compose.
SSH into Your Server
Launch your preferred terminal and connect to your VPS using SSH.
# Log into your server
ssh root@<your-server-ip>
# If using key-based auth
ssh -i ~/.ssh/my-key root@<your-server-ip>First time? Docker not installed? Run: curl -fsSL https://get.docker.com | sh
Create Working Directory
Prepare a directory for your application files and configuration.
# Create and navigate to project directory
mkdir -p ~/apps/drupal
cd ~/apps/drupalConfigure Your Containers
Create the Docker Compose configuration file with these contents:
services:
drupal:
image: drupal:10-apache
ports:
- "8080:80"
volumes:
- drupal_modules:/var/www/html/modules
- drupal_profiles:/var/www/html/profiles
- drupal_themes:/var/www/html/themes
- drupal_sites:/var/www/html/sites
restart: unless-stopped
depends_on:
db:
condition: service_healthy
db:
image: postgres:16-alpine
environment:
- POSTGRES_USER=drupal
- POSTGRES_PASSWORD=<your-db-password>
- POSTGRES_DB=drupal
volumes:
- postgres_data:/var/lib/postgresql/data
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U drupal"]
interval: 10s
timeout: 5s
retries: 5
db_localhost_proxy:
image: alpine/socat
command:
- "-d"
- "-d"
- "TCP-LISTEN:5432,fork,reuseaddr"
- "TCP:db:5432"
network_mode: "service:drupal"
depends_on:
db:
condition: service_healthy
restart: unless-stopped
volumes:
drupal_modules:
drupal_profiles:
drupal_themes:
drupal_sites:
postgres_data:
PORTHost port(default: 8080)DB_PASSWORDDB passwordDeploy with Docker Compose
Launch the application stack using Docker Compose.
# Deploy the application
docker compose up -d
# Check container health
docker compose ps
# Monitor logs
docker compose logs -f --tail=100Open Required Ports
Enable external access by opening the necessary port.
# Allow the application port through firewall
sudo ufw allow 8080/tcp
sudo ufw reload
# Access your app at:
# http://your-server-ip:8080There's an easier way. Meet Server Compass.
Server Compass makes deploying Drupal effortless. Visual setup, one-click deploy, done.
- Intuitive dashboard
- Deploy in 3 minutes
- Free SSL included
- Blue-green deploys
- Real-time logs
- Version history
After Deployment
After deploying Drupal with Server Compass, complete these steps to finish setup
Open /core/install.php
In Setup database, select PostgreSQL and use host db on port 5432
Finish installation, install essential modules, and configure content types
Need help? Check out our documentation for detailed guides.
Drupal FAQ
Common questions about self-hosting Drupal
How do I deploy Drupal with Server Compass?
Simply download Server Compass, connect to your VPS, and select Drupal from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.
What are the system requirements for Drupal?
Drupal requires a minimum of 512MB RAM. We recommend a VPS with at least 1024MB RAM for optimal performance. Any modern Linux server with Docker support will work.
Can I migrate my existing Drupal data?
Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard Drupal backup and restore procedures.
How do I update Drupal to the latest version?
Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest Drupal image will be pulled and deployed with zero downtime.
Is Drupal free to self-host?
Drupal is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.
Ready to Self-Host Drupal?
Download Server Compass and deploy Drupal to your VPS in under 3 minutes. No Docker expertise required.
Download Server Compass



