Quickstart
This guide will help you set up a basic SimpleCloud installation using the CLI, including a proxy and an initial server group functioning as a lobby. We'll cover the CLI and standardized official Droplets.
System Requirements
Before installing SimpleCloud, ensure that the following programs are installed on your system, as they are required for the cloud to function correctly:
- Java 21: Required to run Minecraft servers and other Java-based components.
- screen: Allows you to run processes in the background on Linux.
- lsof: Used for checking open files and network connections. (Already installed on most Linux distributions)
Installing SimpleCloud
SimpleCloud now offers an extensive CLI that covers everything you need to manage SimpleCloud. It’s a small application that serves as an interface for sending commands to your SimpleCloud instance and is the easiest way to get started with SimpleCloud. You can install it with the following command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/theSimpleCloud/simplecloud-manifest/HEAD/install.sh)" && sc setup
After installing the CLI, the setup process will automatically start. You will be presented with the following options:
- New Installation: Install and set up a new SimpleCloud instance.
- Add Server Host: Add a new server host to an existing cloud installation.
- Droplet: Install one or more droplets.
- CLI Only: Continue with CLI usage.
Select New Installation to install the complete bundle. This process includes setting up all core components needed for SimpleCloud.
If you already have a running SimpleCloud instance and want to add another Root Server, consider using the Server Host Droplet.
Running SimpleCloud
Starting the cloud is straightforward. By executing the following command, the cloud will access and start every component needed to run SimpleCloud.
sc start cloud
You can only start the controller locally. Remote access via the CLI is only possible once the controller is running.
The CLI will run a script in your installation directory to start everything necessary for SimpleCloud. You can customize this script if needed, located in the scripts
directory.
Currently, starting specific components via the CLI is not supported. However, you can start them individually by executing the corresponding script in the scripts
directory.
Creating a Proxy Group
With a running SimpleCloud instance, you can create your first group. A group consists of Minecraft or proxy servers and is managed by the Controller.
For a functioning Minecraft server network you first need to create a Proxy Group:
sc create group
Creating a Server Group
To run an actual Minecraft server, you also need to create a Server Group:
sc create group
Configuring the Connection Plugin
Configure the Connection Plugin to route players to your created server group when joining a proxy. Additionally you can configure your group to be used as a fallback group and provide a navigation command for it. Follow these steps:
-
Ensure the plugin is installed: The plugin is installed by default in the bundle. In other cases you can get it from the releases page and place it in your proxy template's plugins folder.
-
Edit the
config.yml
: Configure your server group as a connection in theconfig.yml
file. For example:connections: - name: "lobby" # Name of this connection target permission: "" # No permission required server-name-matcher: operation: "STARTS_WITH" value: "lobby" # The name of your server group
-
Set Network Join Handling: Configure that players are routed to your server group upon joining the network by configuring the network join target:
network-join-target: enabled: true no-target-connections-found-message: "Couldn't connect you to the network because no target servers are available." target-connections: - name: "lobby" # The name of the connection target you configured above priority: 0
The following steps are only useful if you plan on having a setup with multiple server groups.
-
Configure Fallback System: Configure your server group as a fallback group for when players are kicked from other servers:
fallback-connections: enabled: true no-target-connections-found-message: "You have been disconnected from the network since you have been kicked and no fallback server are available." target-connections: - name: "lobby" # The name of the connection target you configured above priority: 0
-
Define a Navigation Command: Create a custom command to allow players to navigate from other server groups to the one you created:
commands: - name: "lobby" # The name of the command aliases: - "l" - "hub" - "quit" - "leave" target-connections: - name: "lobby" # The name of the above configured connection target priority: 0 already-connected-message: "<red>You are already connected to the lobby!" no-target-connections-found-message: "There are no lobby servers available at the moment." permission: "" # No permission required
These example configurations ensure you have a proper lobby server group set up.
What's next?
Great, you're now set up with SimpleCloud. Here are a few links that might be helpful as you continue to explore SimpleCloud: