Skip to content

MCSManager/MCSManager

Repository files navigation


What is MCSManager?

MCSManager Panel (MCSM) is a modern, secure, and distributed control panel designed for managing Minecraft and Steam game servers.

MCSM has already gained a certain level of popularity within the community, specifically Minecraft. MCSM excels in offering a centralized management solution for multiple server instances and provides a secure and reliable multi-user permission system. In addition, We are committed to supporting server administrators not only for Minecraft but also for Terraria and various Steam games. Our goal is to foster a thriving and supportive community for game server management.

failed_to_load_screenshot.png

failed_to_load_screenshot.png

Features

  1. One-click deployment of Minecraft Java/Bedrock Server
  2. Compatible with most Steam game servers. (e.g. Palworld, Squad, Project Zomboid, Teraria, etc.)
  3. Customizable UI, create your own layout
  4. Support Docker virtualization, multiuser, and commercial services
  5. Manage multiple servers with a single web interface
  6. More...

Runtime Environment

MCSM supports both Windows and Linux. The only requirement is Node.js and some libraries for decompression.

Require Node.js 16.20.2 or above.


Installation

Windows

For Windows, We provides packaged executable files:

Go to: https://mcsmanager.com/


Linux

One-Command Deployment

Script needs to register system services, it requires root permissions.

sudo su -c "wget -qO- https://mcsmanager.com/install-v10.sh | bash"

Usage

systemctl start mcsm-{web,daemon}
systemctl stop mcsm-{web,daemon}
  • Only supports Ubuntu/Centos/Debian/Archlinux.
  • Installation directory: /opt/mcsmanager/.

Linux Manual Installation

  • If the installation script failed to execute correctly, you can try install it manually.
# Create /opt directory if not already
mkdir /opt
# Switch to /opt
cd /opt/
# Download Node.js 20.11. If you already have Node.js 16+ installed, ignore this step.
wget https://nodejs.org/dist/v20.11.0/node-v20.11.0-linux-x64.tar.xz
# Decompress Node.js source
tar -xvf node-v20.11.0-linux-x64.tar.xz
# Add Node.js to system PATH
ln -s /opt/node-v20.11.0-linux-x64/bin/node /usr/bin/node
ln -s /opt/node-v20.11.0-linux-x64/bin/npm /usr/bin/npm

# Prepare MCSM's installation directory
mkdir /opt/mcsmanager/
cd /opt/mcsmanager/

# Download MCSManager
wget https://github.com/MCSManager/MCSManager/releases/latest/download/mcsmanager_linux_release.tar.gz
tar -zxf mcsmanager_linux_release.tar.gz

# Install dependencies
./install.sh

# Please open two terminals or screens.

# Start the daemon first.
./start-daemon.sh

# Start the web interface at the second terminal or screen.
./start-web.sh

# For web access, go to http://localhost:23333/
# In general, the web interface will automatically scan and add the local daemon.

This installation approach does not automatically set up MCSManager as a system service. Therefore, it is necessary to use screen for management. For those interested in managing MCSManager through a system service, please refer to our wiki/documentation.


Browser Compatibility

  • Supported on modern browsers including Chrome, Firefox, and Safari.
  • Support for IE has been discontinued.

Development

This section is specifically designed for developers. General users may disregard this portion without concern.

MacOS

git clone https://github.com/MCSManager/MCSManager.git
./install-dependents.sh
./npm-dev-macos.sh

Windows

git clone https://github.com/MCSManager/MCSManager.git
./install-dependents.bat
./npm-dev-windows.bat

Build Production Version

./build.bat # Windows
./build.sh  # MacOS

Next, you'll need to go to the PTY and Zip-Tools projects to download the corresponding binary files and place them in the daemon/lib directory to ensure the proper functioning of the Emulation Terminal and File Decompression.


Code Contributing

If you experience any problems while using MCSManager, you are welcome to submit an Issue. Alternatively, you can fork the project and contribute directly by submitting a Pull Request.

Please ensure that any submitted code adheres to our existing coding style. For more details, refer to the guidelines provided in this issue.


BUG Reporting

We welcome and greatly appreciate reports of any bugs or issues with MCSManager. Prompt action will be taken to address them, and your assistance plays a crucial role in improving MCSM. :-D

For reporting severe vulnerabilities that should not be publicly disclosed, please email us at : mcsmanager-dev@outlook.com. We will acknowledge your contribution by adding your name to the code after the bug is resolved.


Internationalization (i18n)

Thanks to these contributors for providing a substantial amount of translation:


License

The source code of MCSManager is licensed under the Apache-2.0 License.

Copyright ©2024 MCSManager.