Skip to content

Deployment Overview of MCSManager on Server

This document provides the technical deployment specifications for the MCSManager installation. The deployment includes a web panel managed via Docker and an Nginx reverse proxy configured with SSL certificates.

Prerequisites and Basic Requirements

To ensure successful deployment, the following requirements must be met:

  • Operating System: Ubuntu

  • Privileges: Root or sudo access is required to execute installation scripts and manage Docker containers.

  • Network Ports:

  • 12333: External HTTPS traffic (Web Panel)

  • 12444: External HTTPS traffic (Daemon/Agent)

FQDN of the final panel on the hostkey.in domain

The application is accessible via a specific subdomain template within the hostkey.in zone.

Parameter Value
Prefix minecraft
Domain hostkey.in
Full template minecraft{Server_ID}.hostkey.in

Application installation process

The installation is performed using a combination of system package updates and an external setup script:

  1. The system packages are updated via apt.

  2. An installation script named setup_cn.sh is downloaded from https://script.mcsmanager.com/setup_cn.sh.

  3. The script /bin/bash setup_cn.sh is executed to install the MCSManager components and dependencies on the host system.

Docker Containers and Their Deployment

The deployment utilizes a Docker container to handle SSL termination and reverse proxying for the application.

Nginx Proxy Container

  • Image: jonasal/nginx-certbot:latest

  • Network Mode: host

  • Environment Variables:

  • CERTBOT_EMAIL: [email protected]

  • Volumes:

  • nginx_secrets:/etc/letsencrypt (External volume for SSL certificates)

  • /data/nginx/user_conf.d:/etc/nginx/user_conf.d (Configuration directory)

  • Restart Policy: unless-stopped

Custom Scripts and Additional Setup

The deployment includes several configuration steps to ensure the proxy correctly routes traffic:

  • Nginx Configuration Generation: A custom Nginx configuration file is generated at /data/nginx/user_conf.d/minecraft{Server_ID}.hostkey.in.conf. This configuration manages two separate listener blocks for the Web Panel and the Daemon using SSL.

  • Proxy Settings: The proxy is configured to support WebSockets (via Upgrade and Connection headers) and handles large client body sizes up to 10240M.

Application Update Instructions

To update the application, follow these steps:

  • Web Proxy: If using Docker Compose for the Nginx container, navigate to /root/nginx and execute:

    docker compose pull && docker compose up -d
    

  • MCSManager Core: Updates should be performed according to the specific instructions provided by the MCSManager software documentation or by re-running the installation script.

Location of configuration files and data

The following directories are used for storing critical application data and configurations:

Component Path
Nginx Compose File /root/nginx/compose.yml
Nginx User Configurations /data/nginx/user_conf.d/
SSL Certificates (Docker Volume) nginx_secrets

Available ports for connection

The following ports are opened and managed by the proxy:

  • Web Panel Access: Port 12333 (HTTPS)

  • Daemon/Agent Access: Port 12444 (HTTPS)

question_mark
Is there anything I can help you with?
question_mark
AI Assistant ×