Back to all templates
MySQL logo

MySQL

Database512MB+ RAM

MySQL database with persistent storage

databasesqlrelationalmysql

Deploy MySQL in 3 Steps

1

Connect Your VPS

Add your server credentials to Server Compass

2

Select MySQL

Choose from our template library

3

Deploy & Configure

Fill in settings and click Deploy

No Docker knowledge required
Step-by-step deployment guide

Deploy MySQL on a VPS with Server Compass

Use the MySQL template in Server Compass to deploy a persistent MySQL database on your VPS, then verify it from the app detail and DB Admin view.

About 5 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 MySQL 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 MySQL

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

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

Select the MySQL template

Choose the MySQL template. Server Compass fills the Docker image, persistent volume, database name, database user, and generated credentials.

MySQL template selected in Server Compass
5
Step 5

Review the generated database settings

Confirm the app name, host port, database name, username, and generated passwords. In the pilot run, the app was named mysql-demo and the host port was changed to 13306 to avoid conflicts.

Reviewing MySQL deployment settings and generated credentials
6
Step 6

Deploy MySQL

Review the final settings, click Deploy Now, and let Server Compass create the MySQL container and persistent volume on the VPS.

Reviewing MySQL settings before clicking Deploy Now
7
Step 7

Watch the deployment progress

Keep the deployment modal open while Server Compass prepares the project, pulls the Docker image, starts the container, and checks the service status.

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

Confirm the database is running

After deployment finishes, return to the Apps tab and confirm the MySQL app is marked Running with its database connection section available.

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

Open DB Admin to verify access

Open the MySQL app details and switch to DB Admin. Seeing the DB Admin screen return OK confirms Server Compass can reach the deployed database service without exposing the generated passwords.

MySQL DB Admin page showing the deployed database is reachable

After MySQL Opens

  • Copy the masked external connection string only when you are ready to connect from a trusted client.
  • Use DB Admin, mysql CLI, or your application container to create schemas and tables.
  • Keep the generated root and app passwords in Server Compass and avoid pasting them into screenshots or docs.
  • Restrict external access later if the database only needs to be reachable from Docker apps on the same server.

Verified Result

Server Compass showed one running MySQL container, port 13306 mapped to 3306, and the DB Admin page returned OK for the deployed app database.

MySQL deployment questions

What does the MySQL template deploy?

It deploys the official MySQL Docker image with persistent storage, an initial database, an app user, and generated passwords.

Which port did the pilot use?

The pilot used host port 13306 mapped to MySQL port 3306 to avoid conflicts with any existing MySQL service.

Should this become a blog post?

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

Self-Deploy Guide

DIY MySQL Deployment

Learn how to self-host MySQL with this hands-on deployment guide.

1

Start a Secure Shell Session

Open your terminal and connect to your server. Replace the IP address with your VPS IP.

terminal
# SSH into your server
ssh root@your-server-ip

# Using a custom SSH key
ssh -i ~/.ssh/id_rsa root@your-server-ip

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

2

Prepare Your Workspace

Set up a clean directory for your application.

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

Set Up Container Configuration

Set up the container stack using this Docker Compose configuration:

docker-compose.yml
services:
  mysql:
    image: mysql:8
    ports:
      - "3306:3306"
    environment:
      - MYSQL_ROOT_PASSWORD=<your-mysql-root-password>
      - MYSQL_DATABASE=app
      - MYSQL_USER=app
      - MYSQL_PASSWORD=<your-mysql-password>
    volumes:
      - mysql_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

volumes:
  mysql_data:
Setup Variables
PORTHost port to expose(default: 3306)
MYSQL_ROOT_PASSWORDRoot password
MYSQL_DATABASEDatabase name(default: app)
MYSQL_USERDatabase username(default: app)
MYSQL_PASSWORDDatabase password
4

Bring Up the Application

Launch your application stack in the background.

terminal
# Start the containers in detached mode
docker compose up -d

# Check if containers are running
docker compose ps

# View logs
docker compose logs -f
5

Configure Firewall

Configure your firewall to permit external connections.

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

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

Prefer a visual interface? Use Server Compass.

Let Server Compass handle the complexity. Deploy MySQL with a simple, intuitive interface.

  • Visual configuration UI
  • One-click deployment
  • Automatic SSL setup
  • Zero-downtime updates
  • Built-in monitoring
  • One-click rollbacks
Download Server Compass$29 one-time • Lifetime license

After Deployment

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

1

Test database connection

2

Create additional users with specific privileges

3

Configure automated backup scripts

4

Set up monitoring and alerts

5

Optimize MySQL configuration for your workload

6

Review and apply security best practices

Need help? Check out our documentation for detailed guides.

MySQL FAQ

Common questions about self-hosting MySQL

How do I deploy MySQL with Server Compass?

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

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

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

How do I update MySQL to the latest version?

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

Is MySQL free to self-host?

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

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

Download Server Compass