Upgrading from MCSManager 9.x
TIP
The configurations, file formats, and API usage in MCSManager 10 are slightly different than version 9.x. However, 90% of the API calls can still be used as it.
Where is my Current Data?
If your version 9.x was installed using the one-click script, on Linux, your data is located in:
Instance-related data:
/opt/mcsmanager/daemon/data
User-related data:
/opt/mcsmanager/web/data
Similarly, on Windows, the data is in the daemon
and web
directories respectively.
Upgrading Steps
Download and extract the latest MCSManager 10.x release package.
Shut down all panel services and back up your data.
Simply copy all the files in
daemon/data
andweb/data
to complete the backup.
Enter the
daemon
andweb
directories of the 9.x version.Delete all files in the 9.x files except for
daemon/data
andweb/data
, then copy the daemon and web folders from the 10.x version into the corresponding folders.Start the panel.
TIP
You must delete the old code and then copy the new code into the folder, rather than overwriting the files. Many users have pointed out that overwriting files often leads to problems due to extra files from the old version.
Upgrading APIs
If you are using MCSManager 9.x version of Discord bot, QQ bot, SDK, and unofficial tools, you may need to contact the developer for adaptation.
There are several breaking updates in 10.x, including:
1. Update to User Information API:
In 9.x, assigning an instance to a user looked like this:
{
"userName": "lmh",
// more...
"instances": [
{
"instanceUuid": "bc3cd400b8f54be2b14078c7dd4d1820",
"serviceUuid": "af7acf6cb7414d13916b9a9bd39a2b60"
}
],
}
Now in 10.x, serviceUuid
is changed to daemonId
:
{
"userName": "lmh",
// more...
"instances": [
{
"instanceUuid": "d0999ed2c57348868f56d11d2edf8806",
"daemonId": "2068878ada35464c940bf84750b20333"
},
],
}
2. Instance expiry time, creation time, and last start time are upgraded from text format to timestamp format.
9.x
{
"nickname": "Test Instance",
"startCommand": "java -Xmx4G -jar server.jar -nogui",
"stopCommand": "stop",
// ... more
"createDatetime": "10/14/2023",
"lastDatetime": "12/24/2023 16:28",
"endTime": "2/12/2025, 5:45:44 PM",
}
10.x
{
"nickname": "Test Instance",
"startCommand": "java -Xmx4G -jar server.jar -nogui",
"stopCommand": "stop",
// ... more
"createDatetime": 1709631756708,
"lastDatetime": 1710330661317,
"endTime": 0,
}
3. Docker field extraVolumes
of User Information updated to use |
for separation, not supporting definitions like :ro
.
This is mainly for compatibility with Windows Docker.
10.x
// more...
"docker": {
"containerName": "",
// more...
"extraVolumes": [
"myhost/a/b/|container/work"
],
}
4. Change of the daemon ID parameter.
For example, the API to start an instance:
9.X
POST /api/protected_instance/open?remote_uuid={Daemon ID}&uuid={Instance ID}&apikey={Api Key}
10.X
// remote_uuid --> daemonId
POST /api/protected_instance/open?daemonId={Daemon ID}&uuid={Instance ID}&apikey={Api Key}
Note: This change is optional. 10.x
still supports the remote_uuid
parameter, but it's not recommended as it could be removed anytime in the future without notice.