Back to all templates
Seafile logo

Seafile

Infrastructure1024MB+ RAM

File sync and share with versioning

storagefilesversioningsync

Deploy Seafile in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select Seafile

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy Seafile on a VPS with Server Compass

Use the Seafile template in Server Compass to deploy file sync and sharing with versioning on your VPS, then verify the login page in a browser.

About 10 minutesBrowser verified
1
Step 1

Open the server Apps tab

Select the tutorial-vps 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 Seafile 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 Seafile

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

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

Select the Seafile template

Choose the Seafile template. Server Compass fills the Seafile service, MariaDB database, Memcached service, persistent volumes, generated passwords, and public port.

Seafile template selected in Server Compass
5
Step 5

Review the Seafile settings

Confirm the app name, hostname, admin email, generated secrets, and compose services. In this run, the app was named seafile-demo and used host port 3001.

Reviewing Seafile project settings and generated services
6
Step 6

Deploy Seafile

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

Reviewing Seafile 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 Seafile, MariaDB, and Memcached images, starts the containers, and verifies the stack.

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

Confirm Seafile is running

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

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

Open Seafile in the browser

Open the application URL in a browser. The Seafile login page confirms the file sync service is reachable.

The deployed Seafile login page loaded in a browser

After Seafile Opens

  • Log in with the generated admin credentials and change or rotate them according to your access policy.
  • Use a VPN, IP allowlist, firewall rule, or authenticated reverse proxy for production access.
  • Put Seafile behind HTTPS before real file sync or sharing.
  • Create libraries, configure sharing policy, and review storage quotas before onboarding users.
  • Back up both the Seafile data volume and the MariaDB volume.
  • Keep the Seafile, MariaDB, and Memcached images updated for dependency and security fixes.

Verified Result

The Seafile login page loaded successfully from the deployed stack.

Seafile deployment questions

What does the Seafile template deploy?

It deploys Seafile with a MariaDB database, Memcached service, persistent Seafile data, and persistent database storage.

Which port did the tutorial use?

The tutorial used host port 3001, which maps to the Seafile web UI on container port 80.

Does Seafile need HTTPS?

Use HTTPS for production. The raw HTTP tutorial check is only to verify the stack is reachable after deployment.

Should this become a blog post?

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

Command Line Setup

Install Seafile Manually

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

1

Remote into Your Server

Initiate a secure shell connection to your server using the command below.

terminal
# Connect to your VPS
ssh root@your-server-ip

# Or with a specific SSH key
ssh -i ~/.ssh/your-key root@your-server-ip

First time? Docker required! Install it with: curl -fsSL https://get.docker.com | sh

2

Create the App Directory

Organize your deployment by creating a dedicated project folder.

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

Write Your docker-compose.yml

Create a new docker-compose.yml file and paste this configuration:

docker-compose.yml
services:
  seafile:
    image: seafileltd/seafile-mc:latest
    ports:
      - "80:80"
    environment:
      - DB_HOST=db
      - DB_ROOT_PASSWD=<your-db-root-password>
      - SEAFILE_ADMIN_EMAIL=<your-admin-email>
      - SEAFILE_ADMIN_PASSWORD=<your-admin-password>
      - SEAFILE_SERVER_HOSTNAME=<your-hostname>
    volumes:
      - seafile_data:/shared
    restart: unless-stopped
    depends_on:
      - db
      - memcached

  db:
    image: mariadb:11
    environment:
      - MARIADB_ROOT_PASSWORD=<your-db-root-password>
    volumes:
      - mysql_data:/var/lib/mysql
    restart: unless-stopped

  memcached:
    image: memcached:latest
    restart: unless-stopped

volumes:
  seafile_data:
  mysql_data:
Configuration Options
PORTHost port(default: 80)
HOSTNAMEHostname
ADMIN_EMAILAdmin email
ADMIN_PASSWORDAdmin password
DB_ROOT_PASSWORDDB root password
4

Launch the Containers

Start the services and tail the logs to verify startup.

terminal
# Spin up containers
docker compose up -d

# Verify deployment
docker compose ps

# Check logs for errors
docker compose logs -f
5

Open Firewall Ports

Open the required port in your firewall to allow access.

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

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

Want the easy way? Try Server Compass.

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

  • Visual config editor
  • Instant deployment
  • Automatic HTTPS
  • Smooth updates
  • Live monitoring
  • Quick rollbacks
Download Server Compass$29 one-time • Lifetime license

After Deployment

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

1

Login with admin credentials

2

Create libraries

3

Install sync clients

Need help? Check out our documentation for detailed guides.

Seafile FAQ

Common questions about self-hosting Seafile

How do I deploy Seafile with Server Compass?

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

Seafile requires a minimum of 1024MB RAM. We recommend a VPS with at least 2048MB RAM for optimal performance. Any modern Linux server with Docker support will work.

Can I migrate my existing Seafile data?

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

How do I update Seafile to the latest version?

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

Is Seafile free to self-host?

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

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

Download Server Compass