Back to all templates
Grav logo

Grav

Application256MB+ RAM

Modern flat-file CMS with no database required

cmsflat-filephpmarkdown

Deploy Grav in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select Grav

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy Grav on a VPS with Server Compass

Use the Grav template in Server Compass to deploy a self-hosted modern flat-file CMS with no database required on your VPS, then verify the Grav first-run page 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 Grav 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 Grav

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

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

Select the Grav template

Choose the Grav template. Server Compass fills the Grav image, host port, timezone, and persistent config volume.

Grav template selected in Server Compass
5
Step 5

Review the Grav settings

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

Reviewing Grav project settings and compose services
6
Step 6

Deploy Grav

Review the generated compose settings, confirm the port is available, and click Deploy Now.

Reviewing Grav 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 Grav image, starts the container, and verifies the stack.

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

Confirm Grav is running

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

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

Open Grav in the browser

Click Open Application or open the application URL in a browser. The Grav page confirms the deployed app is reachable and ready for site setup.

The deployed Grav first-run page loaded in a browser

After Grav Opens

  • Create the first admin account immediately after first launch.
  • Add a domain and HTTPS before inviting users or publishing content publicly.
  • Install the admin plugin, themes, and other plugins needed for your site.
  • Back up the Grav config volume before storing production content.

Verified Result

The Grav app loaded successfully in a browser and displayed the first-run page.

Grav deployment questions

What does the Grav template deploy?

It deploys Grav with a persistent config volume and no database service.

Which port did the tutorial use?

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

Why does the browser verification stop at the first-run page?

A fresh Grav deployment is considered reachable when the first-run page or homepage loads. Continuing further would require creating a site account, so the public guide verifies the safe pre-setup page.

Should this become a blog post?

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

Manual Deployment Guide

Manual Grav Setup

For terminal enthusiasts: deploy Grav manually with these simple steps.

1

Connect to Your Remote Server

Begin by establishing a secure connection to your server through the terminal.

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

Set Up Your App Folder

Create a dedicated folder for your application files.

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

Set Up Docker Compose

Create the following docker-compose.yml in your project directory:

docker-compose.yml
services:
  grav:
    image: lscr.io/linuxserver/grav:latest
    ports:
      - "8080:80"
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=UTC
    volumes:
      - grav_config:/config
    restart: unless-stopped

volumes:
  grav_config:
Environment Configuration
PORTHost port to expose(default: 8080)
4

Spin Up the Stack

Run Docker Compose to launch your application.

terminal
# Launch the stack
docker compose up -d

# Verify container status
docker compose ps

# Follow the logs
docker compose logs --follow
5

Open the Application Port

Configure UFW to allow traffic to your application.

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

Make it simple with Server Compass.

Deploy Grav without touching the command line. Server Compass gives you a clean UI for one-click deployments.

  • 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 Grav with Server Compass, complete these steps to finish setup

1

Access the admin panel at /admin

2

Create admin account on first visit

3

Install plugins and themes

Need help? Check out our documentation for detailed guides.

Grav FAQ

Common questions about self-hosting Grav

How do I deploy Grav with Server Compass?

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

Grav requires a minimum of 256MB 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 Grav data?

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

How do I update Grav to the latest version?

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

Is Grav free to self-host?

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

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

Download Server Compass