JHL-HK
522 words
3 minutes
How to deploy MCSManager Panel?
What is MCSManager Panel?
MCSManager Panel(abbr: MCSM Panel)is a multilingual, lightweight, out-of-the-box, and multi-instance Minecraft server control panel with Docker support.
MCSManager Panel is a modern and a panel that support any excutable files. Includes: Steamapps, Minecraft, Terraria, Python files, Java files, etc.
Installation:
Installation with one command (Recommand)
x86 Ubuntu/CentOS/Debian/Archlinux ONLY!
wget -qO- https://gitee.com/mcsmanager/script/raw/master/setup_cn.sh | bash # Root Userwget -qO- https://gitee.com/mcsmanager/script/raw/master/setup_cn.sh | sudo bash # non-Root User
- You are able to use
systemctl start mcsm-{web,daemon}
orsudo systemctl start mcsm-{web,daemon}
for non-Root user to start the panel. - The default installation directory is
/opt/mcsmanager
- After you finished this step, you are able to visit your Panel at
http://yourdomain:23333
orhttp://yourip:23333
.
Manual installation
# Switch to the installation directory. If not existed, create with 'mkdir /opt/'cd /opt/
# If not done already, install Node.js runtime (14+ required).# Download node-v14.17.6, you can also use another version. The minimum requirement is v14.wget https://nodejs.org/dist/v14.17.6/node-v14.17.6-linux-x64.tar.gz
# Extract required files.tar -zxvf node-v14.17.6-linux-x64.tar.gz
# Add Node.js to system PATHln -s /opt/node-v14.17.6-linux-x64/bin/node /usr/bin/nodeln -s /opt/node-v14.17.6-linux-x64/bin/npm /usr/bin/npm
# Create and switch to installation directorymkdir /opt/mcsmanager/cd /opt/mcsmanager/
# Download the web project. (Skip this if you do not plan to run web panel on this machine)git clone https://github.com/MCSManager/MCSManager-Web-Production.git webcd web# Install dependenciesnpm install --productioncd /opt/mcsmanager/
# Download the Daemon (Skip this if you do not plan to run daemon service on this machine.)git clone https://github.com/MCSManager/MCSManager-Daemon-Production.git daemoncd daemon# Install dependenciesnpm install --production
# You need two terinals or Screens for the following step.# Run the daemon first (Skip this if you do not plan to run daemon service on this machine.)cd /opt/mcsmanager/daemon# Start the daemonnode app.js
# Run the web project (in another screen) (Skip this if you do not plan to run web panel on this machine)cd /opt/mcsmanager/web# start the applicationnode app.js
# Access http://localhost:23333/ for web interface
Confirgure Proxy (Recommand)
Nginx is required
- This step is required for those who wish to make the panel public. It is recommand to proxy both web and daemon.
http {
# limit upload size client_max_body_size 100g;
server { # Web to public listen 80; listen 443 ssl; ssl_certificate /path/to/file; ssl_certificate_key /path/to/file;
location / { # Web proxy_pass http://localhost:23333/; root html; index index.html index.htm; proxy_set_header Host localhost; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; # Websocket proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; expires -1; } }
server { # Daemon to public listen 8443 ssl; ssl_certificate /path/to/file; ssl_certificate_key /path/to/file;
location / { # daemon proxy_pass http://localhost:24444/; root html; index index.html index.htm; proxy_set_header Host localhost; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header REMOTE-HOST $remote_addr; # websocket proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; add_header X-Cache $upstream_cache_status; add_header Cache-Control no-cache; expires -1; } }}
- Replace
/path/to/file
to your SSL certificate and Key file. - After you finished confirgure proxy, you are able to visit your Panel at
https://yourdomain.com
.
p.s. You have to change daemons connections address to proxied by using this format wss://yourdomain
or wss://yourip
, also change port to proxied port.
If you have a question or problem, please join the Official Discord community to ask for help.
How to deploy MCSManager Panel?
https://article.jhl.idv.hk/posts/how_to_deploy_mcsmanager/