---
title: "Startup settings and Docker image explained"
url: https://help.endercloud.in/docs/startup-settings-and-docker-image
category: "Game Panel"
type: Guide
tags: ["java", "nodejs", "panel", "startup"]
keywords: "startup tab, startup command, startup variables, docker image, docker version, java version, java 25, java 21 temurin, graalvm, corretto, node version, server jar file, build number, main file, git repo, auto update, environment, change startup command, custom startup command, edit startup, change docker image, change java version, startup variables explained, server jar name"
difficulty: intermediate
time: "6 minutes"
updated: 2026-11-14
source: Endercloud Knowledge Base (official)
---

# Startup settings and Docker image explained

> In Startup you can change the Docker Image (Java or Node.js version) and variables; the startup command is read-only (ask support for a custom one). Versions picks Java for you.

The **Startup** tab (under CONFIGURATION) controls **how** your server is launched. It has three parts: the **Startup Command**, the **Variables**, and the **Docker Image**, which decides the Java or Node.js version. Changes take effect the next time the server starts or restarts.

## Startup Command

At the top you see the command the panel runs. On a Minecraft server it looks like this:

```
java -Xms128M -XX:MaxRAMPercentage=95.0 ... -jar server.jar
```

The Startup Command is **read-only**: it is shown so you can see it, but you can't edit it. Memory is handled for you: Java may use up to 95% of your plan's RAM, leaving a little room for the system.

> **Note:**
> **What you can change yourself:** the **Docker Image** dropdown and the editable **Variables**. Need a custom startup command, for example special JVM flags? [Open a support ticket](https://billing.endercloud.in/tickets/create) and our team will help.

## Variables

Each variable has a name, a short description and a value. Some can be edited and some are read-only. What you see depends on the server type.

### Minecraft

-   **MINECRAFT VERSION** (`MINECRAFT_VERSION`, default `latest`), **SERVER JAR FILE** (`SERVER_JARFILE`, default `server.jar`) and **BUILD NUMBER** (`BUILD_NUMBER`, default `latest`). They match what the **Versions** tab installs, so you normally leave them alone.
    
-   **SERVER JAR FILE** must match the jar in your main folder (normally `server.jar`). Only change it if you upload your own jar with a different name.
    

### Bots (Node.js)

-   **Main file**: the file to run, default `index.js`. It can be `.js` or `.ts` (TypeScript runs with ts-node). Include the folder if needed, for example `src/index.js`.
    
-   **Git Repo Address**, **Install Branch**, **Git Username** and **Git Access Token**: pull your code from a Git repository. For a private GitHub repo, use a personal access token.
    
-   **Auto Update** (0 or 1): pull the latest code from the repo on every start.
    
-   **User Uploaded Files** (0 or 1), **Additional Node packages** and **Uninstall Node packages** (space-separated names), and **Additional Arguments**.
    
-   If a `package.json` exists, `npm install` runs automatically on every start.
    

Other bot languages have their own variables, each with a description in the panel. More in [Host a Node.js Discord bot](/docs/host-a-nodejs-discord-bot) and [Host a Python Discord bot](/docs/host-a-python-discord-bot).

> **Tip:**
> For bots, the most common start-up problem is a wrong main file name. It must match your file exactly, including capital letters and the folder.

## Docker Image (Java or Node.js version)

The **Docker Image** box picks the runtime your server uses.

### Minecraft: Java versions

The list includes **Java 25**, **Java 21 GraalVM**, **Java 21 Temurin (Default)**, Java 17 and Java 11 GraalVM, Java 21/19/17/11/8 Corretto, and Java 21/17/11/8 Temurin. Temurin, Corretto and GraalVM are different builds of Java; any of them runs Minecraft.

> **Note:**
> **You usually don't need to touch this.** When you install software from the **Versions** tab, the correct Java is selected automatically. For example, a fresh Paper 26.3 server runs on Java 25 even though "Java 21 Temurin" is labelled "(Default)" in this list. Only change the Docker Image if a server, modpack or plugin needs a specific Java version.

The version table and the error messages to look for are in [How to change your Minecraft server's Java version](/docs/how-to-change-your-minecraft-servers-java-version).

### Bots: Node.js versions

Node.js bot servers can choose from **Nodejs 12** up to **Nodejs 25**. Pick the version your code and libraries need; current discord.js needs a recent Node.js. Other bot languages show their own versions.

After picking an image, **Restart** the server and watch the **Console**. The first start after a change can take a little longer.

## Changes apply on restart

Nothing you change in Startup affects a running server until it restarts. If a change breaks the start-up, set the value back and restart again. Writing down the old value first makes this easy.

## Want a different language or software entirely?

The Docker image only changes the version. To switch Minecraft software use the **Versions** tab ([guide](/docs/how-to-change-minecraft-version-or-server-software)). To switch a bot from Node.js to Python, or a Java server to Bedrock, use **Settings → Change Egg** ([guide](/docs/how-to-reinstall-or-change-your-server-type), and [Change your bot language or version](/docs/change-your-bot-language-or-version)).

## Frequently asked questions

**Q: UnsupportedClassVersionError when starting Minecraft**

The selected Java is too old for this Minecraft version or a plugin. Reinstalling the version from the **Versions** tab normally sets the right Java; otherwise pick a newer Java in Docker Image and restart.

**Q: "Cannot find module" or "No such file" for my bot**

The **Main file** variable doesn't match your file name or path. Check the name in **Files** and update the variable.

**Q: Can I add my own Java flags or change the RAM in the command?**

Not yourself: the Startup Command is read-only and the RAM comes from your plan. For a custom startup command, open a support ticket. To get more RAM, upgrade your plan in billing.
