Go to file
YuMao 4d9959f666
Merge pull request #1414 from KagurazakaNyaa/master
ci: add linux/arm64 platform support for docker
2024-10-30 14:19:12 +08:00
.github Merge pull request #1414 from KagurazakaNyaa/master 2024-10-30 14:19:12 +08:00
common feat: tag search 2024-09-02 16:54:14 +08:00
daemon refactor: instance "command exec()" replace to "execPreset()" 2024-10-30 14:18:52 +08:00
dockerfile chore: Suppress docker build warnings 2024-10-29 10:12:54 +08:00
frontend fix: text typo 2024-10-29 11:05:52 +08:00
languages refactor: instance "command exec()" replace to "execPreset()" 2024-10-30 14:18:52 +08:00
panel fix: MCSM_INSTANCES_BASE_PATH path err 2024-10-17 15:08:31 +08:00
prod-scripts chore: build.sh add "npm install" 2024-09-30 11:09:50 +08:00
.dockerignore try build docker image 2024-10-12 16:38:48 +08:00
.gitignore Revert "chore: Add dependency files" 2024-09-28 12:33:37 +08:00
.npmrc Fix: i18next scanner config 2023-09-06 11:32:08 +08:00
.prettierignore Refactor: language file 2022-09-24 10:28:12 +08:00
.prettierrc.json Feat: change file permission 2022-08-11 14:06:42 +08:00
build.bat Fix: build bat path err 2024-05-12 21:09:38 +08:00
build.sh chore: build.sh add "npm install" 2024-09-30 11:09:50 +08:00
CODE_OF_CONDUCT.md Create CODE_OF_CONDUCT.md 2024-04-18 11:54:04 +08:00
CONTRIBUTING.md Update: readme.md files 2024-04-18 14:46:19 +08:00
example.docker-compose.yml feat: daemon embedded java runtime 2024-10-21 12:05:01 +08:00
i18-scanner.config.js Feat: add new languages 2024-05-06 16:05:40 +08:00
install-dependents.bat Feat: add workspace "npm install" 2023-11-30 11:05:12 +08:00
install-dependents.sh Feat: Change Version 2024-03-12 20:05:48 +08:00
lib-urls.txt chore: Auto build when release 2024-09-29 18:44:35 +08:00
LICENSE Refactor: project structure 2023-08-21 10:49:37 +08:00
npm-dev-macos.sh Feat: Change Version 2024-03-12 20:05:48 +08:00
npm-dev-windows.bat Fix: auto open page & npm command 2024-01-15 14:41:51 +08:00
package-lock.json Feat: 7zip test 2024-02-06 20:55:10 +08:00
package.json Fix: wavesurfer.js package.json error 2024-02-05 15:20:23 +08:00
README_ES.md added spanish readme 2024-10-26 11:41:39 -03:00
README_JP.md added spanish readme 2024-10-26 11:41:39 -03:00
README_PTBR.md added spanish readme 2024-10-26 11:41:39 -03:00
README_TW.md added spanish readme 2024-10-26 11:41:39 -03:00
README_ZH.md added spanish readme 2024-10-26 11:41:39 -03:00
README.md Update README.md 2024-10-29 14:34:02 +08:00
SECURITY.md Update: readme.md files 2024-04-18 14:46:19 +08:00


What is MCSManager?

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

MCSManager has already gained a certain level of popularity within the community, specifically Minecraft. MCSManager 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.

MCSManager supports English, French, German, Italian, Japanese, Portuguese, Simplified Chinese, and Traditional Chinese, with plans to add support for more languages in the future!

Terminal

failed_to_load_screenshot.png

Instance List

failed_to_load_screenshot.png

Custom Layout

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, Terraria, 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://script.mcsmanager.com/setup.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

Open Issue: Click here

Security Vulnerability Report: SECURITY.md


Internationalization

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.