Back to all templates
HumHub logo

HumHub

Application512MB+ RAM

Social network platform for communities

socialcommunitynetwork

Deploy HumHub in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select HumHub

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy HumHub on a VPS with Server Compass

Use the HumHub template in Server Compass to deploy a self-hosted social network and collaboration platform with persistent HumHub config, upload, module, and MariaDB volumes on your VPS, then verify the HumHub web UI in a browser.

About 7 minutesBrowser verified
1
Step 1

Open the server Apps tab

Select your VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

Server Compass Apps tab before creating a HumHub app
2
Step 2

Choose an app template

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Choosing to deploy an app from a Server Compass template
3
Step 3

Search for HumHub

Use the template picker search to find HumHub in the Server Compass template catalog.

Searching for HumHub in the Server Compass template picker
4
Step 4

Select the HumHub template

Choose the HumHub template. Server Compass fills the HumHub image, host port, published server URL, and persistent HumHub config, upload, module, and MariaDB volumes.

HumHub template selected in Server Compass
5
Step 5

Review the HumHub settings

Confirm the app name and compose services. In this run, the app was named humhub-demo and used host port 8080.

Reviewing HumHub project settings and compose services
6
Step 6

Deploy HumHub

Review the generated environment values, confirm the port is available, and click Deploy Now.

Reviewing HumHub environment variables and port before deployment
7
Step 7

Watch the deployment progress

Keep the deployment modal open while Server Compass uploads the compose file, pulls the HumHub image, starts the container, and verifies the stack.

Server Compass deploying the HumHub template on the VPS
8
Step 8

Confirm HumHub is running

After deployment finishes, return to the Apps tab and confirm the HumHub app is marked Running with its application URL available.

HumHub template running in the Server Compass Apps tab
9
Step 9

Open HumHub in the browser

Open the application URL in a browser. The HumHub web UI confirms the site is reachable.

The deployed HumHub web UI loaded in a browser

After HumHub Opens

  • Complete the HumHub installation wizard before production use.
  • Configure users, spaces, modules, email, and HTTPS before inviting users.
  • Add a domain and HTTPS before exposing the community site to users.
  • Back up the HumHub and MariaDB volumes before relying on the site for production communities.

Verified Result

The HumHub web UI loaded successfully in a browser.

HumHub deployment questions

What does the HumHub template deploy?

It deploys the HumHub container with MariaDB plus persistent config, upload, module, and database volumes.

Which port did the tutorial use?

The tutorial used host port 8080, which maps to the HumHub web server on container port 80.

Why does the guide stop at the first-run web UI?

The tutorial verifies the clean first-run web UI because real library paths, users, metadata providers, and remote access settings depend on the production server.

Should this become a blog post?

No. The deployment guide should live on the HumHub template detail page and be linked from the reusable template deployment docs page.

Command Line Setup

Install HumHub Manually

Set up HumHub yourself using Docker Compose and the command line.

1

Connect to Your VPS via SSH

Fire up your terminal application and establish a connection to your remote server.

terminal
# Access your VPS
ssh root@YOUR_SERVER_IP

# With SSH key authentication
ssh -i ~/.ssh/your-private-key root@YOUR_SERVER_IP

First time? Ensure Docker is installed first: curl -fsSL https://get.docker.com | sh

2

Initialize Project Folder

Create a folder to house your Docker Compose configuration.

terminal
# Create and navigate to project directory
mkdir -p ~/apps/humhub
cd ~/apps/humhub
3

Create Docker Configuration

Define your services in a docker-compose.yml file:

docker-compose.yml
services:
  humhub:
    image: mriedmann/humhub:stable
    ports:
      - "8080:80"
    environment:
      - HUMHUB_DB_HOST=db
      - HUMHUB_DB_NAME=humhub
      - HUMHUB_DB_USER=humhub
      - HUMHUB_DB_PASSWORD=<your-db-password>
    volumes:
      - humhub_config:/var/www/localhost/htdocs/protected/config
      - humhub_uploads:/var/www/localhost/htdocs/uploads
      - humhub_modules:/var/www/localhost/htdocs/protected/modules
    restart: unless-stopped
    depends_on:
      db:
        condition: service_healthy

  db:
    image: mariadb:11
    environment:
      - MARIADB_ROOT_PASSWORD=<your-db-root-password>
      - MARIADB_DATABASE=humhub
      - MARIADB_USER=humhub
      - MARIADB_PASSWORD=<your-db-password>
    volumes:
      - mariadb_data:/var/lib/mysql
    restart: unless-stopped
    healthcheck:
      test: ["CMD-SHELL", "healthcheck.sh --connect --innodb_initialized"]
      interval: 10s
      timeout: 5s
      retries: 5

volumes:
  humhub_config:
  humhub_uploads:
  humhub_modules:
  mariadb_data:
Configuration Options
PORTHost port(default: 8080)
DB_PASSWORDDB password
DB_ROOT_PASSWORDRoot password
4

Execute the Deployment

Start your containers and verify they're running correctly.

terminal
# Launch the stack
docker compose up -d

# Verify container status
docker compose ps

# Follow the logs
docker compose logs --follow
5

Allow Network Access

Update UFW rules to allow traffic on the application port.

terminal
# Allow the application port through firewall
sudo ufw allow 8080/tcp
sudo ufw reload

# Access your app at:
# http://your-server-ip:8080
Skip the Terminal

Don't want to type commands? We've got you.

No terminal needed. Deploy HumHub through a visual dashboard with automatic configuration.

  • No terminal required
  • Point-and-click setup
  • Auto SSL certificates
  • Rolling deployments
  • Health monitoring
  • Instant rollbacks
Download Server Compass$29 one-time • Lifetime license

After Deployment

After deploying HumHub with Server Compass, complete these steps to finish setup

1

Complete installation wizard

2

Create admin account

3

Configure spaces and modules

Need help? Check out our documentation for detailed guides.

HumHub FAQ

Common questions about self-hosting HumHub

How do I deploy HumHub with Server Compass?

Simply download Server Compass, connect to your VPS, and select HumHub 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 HumHub?

HumHub 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 HumHub data?

Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard HumHub backup and restore procedures.

How do I update HumHub to the latest version?

Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest HumHub image will be pulled and deployed with zero downtime.

Is HumHub free to self-host?

HumHub 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 HumHub?

Download Server Compass and deploy HumHub to your VPS in under 3 minutes. No Docker expertise required.

Download Server Compass