Go to file
2024-12-01 21:19:37 +08:00
.github Merge pull request #1414 from KagurazakaNyaa/master 2024-10-30 14:19:12 +08:00
.vscode feat: update vscode settings 2024-12-01 21:19:37 +08:00
common chore: del useless code 2024-11-29 16:40:17 +08:00
daemon feat: auto create host path 2024-11-29 15:52:57 +08:00
dockerfile fix: alpine build need wget 2024-10-30 16:52:25 +08:00
frontend feat: i18n code 2024-12-01 12:17:42 +08:00
languages feat: i18n code 2024-12-01 12:17:42 +08:00
panel feat: i18n code 2024-12-01 12:17:42 +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 chore: add vscode/settings.json & update readme 2024-12-01 12:41:33 +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 chore: add vscode/settings.json & update readme 2024-12-01 12:41:33 +08:00
README.md chore: add vscode/settings.json & update readme 2024-12-01 12:41:33 +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. Supports all images on Docker Hub, supports multiple users, and supports commercial services!
  5. Manage multiple servers with a single web interface
  6. The technology stack is simple, and you only need to be good at Typescript to complete the entire MCSManager development
  7. 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.


Development

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

Plugins

We use "VS Code" to develop MCSManager. You may need to install these plugins:

  • i18n display support (I18n Ally)
  • Code formatter (Prettier)
  • Vue - Offcial
  • ESLint

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

Dependency Files

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.

Build Production Version

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

Output Directory: "production-code"


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.


Browser Compatibility

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

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.