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.


Open-source CRM for business with customizable entities
Add your server credentials to Server Compass
Choose from our template library
Fill in settings and click Deploy
Use the EspoCRM template in Server Compass to deploy a self-hosted open-source CRM with MySQL on your VPS, then verify the EspoCRM web UI in a browser.
Select your VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

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

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

Choose the EspoCRM template. Server Compass fills the EspoCRM image, MySQL service, persistent site volumes, database settings, and required secret value.

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

Review the generated environment values, keep the database password masked, confirm the port is available, and click Deploy Now.

Keep the deployment modal open while Server Compass uploads the compose file, pulls the EspoCRM and MySQL images, starts the containers, and verifies the stack.

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

Click Open Application or open the application URL in a browser. The EspoCRM install wizard confirms the deployed app is reachable and ready for the database credentials.

The EspoCRM app loaded successfully in a browser and displayed the install wizard.
It deploys EspoCRM with MySQL 8.0 and persistent application and database volumes.
The tutorial used host port 8080, which maps to the EspoCRM web server on container port 80.
A fresh EspoCRM deployment is considered reachable when the install wizard loads. Continuing further would require entering generated database credentials, so the public guide verifies the safe pre-install wizard.
No. The deployment guide should live on the EspoCRM template detail page and be linked from the reusable template deployment docs page.
Want full control? Here's how to deploy EspoCRM yourself using Docker Compose.
Access your server's command line by opening a terminal and running the SSH command below.
# SSH into your server
ssh root@your-server-ip
# Using a custom SSH key
ssh -i ~/.ssh/id_rsa root@your-server-ipFirst time? Need Docker? Install it: curl -fsSL https://get.docker.com | sh
Set up the folder structure for your Docker deployment.
# Create and navigate to project directory
mkdir -p ~/apps/espocrm
cd ~/apps/espocrmSet up your Docker Compose file with this configuration:
services:
espocrm:
image: espocrm/espocrm:latest
ports:
- "8080:80"
environment:
- ESPOCRM_DATABASE_HOST=db
- ESPOCRM_DATABASE_NAME=espocrm
- ESPOCRM_DATABASE_USER=espocrm
- ESPOCRM_DATABASE_PASSWORD=<your-db-password>
- ESPOCRM_ADMIN_USERNAME=admin
- ESPOCRM_ADMIN_PASSWORD=<your-admin-password>
- ESPOCRM_SITE_URL=<your-site-url>
volumes:
- espocrm_data:/var/www/html
restart: unless-stopped
depends_on:
db:
condition: service_healthy
db:
image: mysql:8.0
environment:
- MYSQL_ROOT_PASSWORD=<your-db-root-password>
- MYSQL_DATABASE=espocrm
- MYSQL_USER=espocrm
- MYSQL_PASSWORD=<your-db-password>
volumes:
- db_data:/var/lib/mysql
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "mysqladmin ping -h localhost -u root -p$$MYSQL_ROOT_PASSWORD || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 30s
volumes:
espocrm_data:
db_data:
PORTHost port to expose(default: 8080)SITE_URLSite URLADMIN_USERAdmin username(default: admin)ADMIN_PASSWORDAdmin passwordDB_NAMEDatabase name(default: espocrm)DB_USERDatabase user(default: espocrm)Start all services defined in your compose file.
# Start the containers in detached mode
docker compose up -d
# Check if containers are running
docker compose ps
# View logs
docker compose logs -fOpen the port so you can access the application externally.
# Allow the application port through firewall
sudo ufw allow 8080/tcp
sudo ufw reload
# Access your app at:
# http://your-server-ip:8080Skip the terminal and deploy EspoCRM with a visual interface. Configure everything with clicks, not commands.
After deploying EspoCRM with Server Compass, complete these steps to finish setup
Log in with admin credentials
Configure your company settings
Customize entities and fields
Need help? Check out our documentation for detailed guides.
Common questions about self-hosting EspoCRM
Simply download Server Compass, connect to your VPS, and select EspoCRM from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.
EspoCRM 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.
Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard EspoCRM backup and restore procedures.
Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest EspoCRM image will be pulled and deployed with zero downtime.
EspoCRM 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.
Download Server Compass and deploy EspoCRM to your VPS in under 3 minutes. No Docker expertise required.
Download Server Compass