Skip to content

Commit 774f9d0

Browse files
committed
Enhance server installation documentation with Docker setup instructions and recommendations for Linux users. Added prerequisites, quick start guide, and details on persistent data and server updates.
1 parent c736765 commit 774f9d0

1 file changed

Lines changed: 97 additions & 1 deletion

File tree

docs/core-concepts/server-manual/server-installation.mdx

Lines changed: 97 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,11 +48,13 @@ The following Distros are granted to be supported out of the box:
4848
- `Ubuntu 22.04`
4949
- `Debian 12`
5050

51+
For other distributions or an easier setup, consider using [Docker](#docker) which handles all dependencies automatically.
52+
5153
You can see a community created page with instructions on how to install the server on other distros and versions [here](server-linux-arm).
5254

5355
:::
5456

55-
On Linux, the only way to download the server is through [SteamCMD](https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD). If you are on Ubuntu/Debian, you can easily install SteamCMD like that:
57+
On Linux, you can download the server through [SteamCMD](https://developer.valvesoftware.com/wiki/SteamCMD#Downloading_SteamCMD) or use [Docker](#docker) (recommended). If you are on Ubuntu/Debian, you can easily install SteamCMD like that:
5658

5759
<Tabs groupId="operating-systems"
5860
values={[
@@ -213,4 +215,98 @@ steamcmd +force_install_dir ~/nanos-world-server +login anonymous "+app_update 1
213215

214216
Finished! You can now proceed to the next steps to configure your nanos world server.
215217

218+
:::
219+
220+
## Docker
221+
222+
:::tip Recommended for Linux
223+
224+
Using Docker is the easiest way to run a nanos world server on Linux, as it handles all dependencies automatically and works across different distributions.
225+
226+
:::
227+
228+
You can run nanos world server in a containerized environment using Docker. This method works on any system that supports Docker (Linux, Windows, macOS).
229+
230+
### Prerequisites
231+
232+
* Docker (version 20.10 or higher)
233+
* Docker Compose (version 2.0 or higher)
234+
* At least 100MB of free disk space
235+
236+
### Quick Start with Docker Compose
237+
238+
1. Create a `docker-compose.yml` file:
239+
240+
```yaml
241+
services:
242+
nanos-world-server:
243+
image: olivatooo/nanos-world-server:latest
244+
restart: unless-stopped
245+
# Uncomment to always have the latest version
246+
# pull_policy: always
247+
ports:
248+
- "7777:7777/udp"
249+
- "7777:7777/tcp"
250+
volumes:
251+
- ./Packages:/app/Packages
252+
- ./Assets:/app/Assets
253+
# Uncomment and modify to pass parameters to the server
254+
# command: ["--port", "7777", "--map", "MyMap"]
255+
```
256+
257+
2. Start the server:
258+
259+
```shell
260+
docker-compose up -d
261+
```
262+
263+
3. View logs:
264+
265+
```shell
266+
docker-compose logs -f
267+
```
268+
269+
4. Stop the server:
270+
271+
```shell
272+
docker-compose down
273+
```
274+
275+
### Using Docker CLI
276+
277+
Alternatively, you can run the server directly with Docker:
278+
279+
```shell
280+
docker run olivatooo/nanos-world-server
281+
```
282+
283+
### Configuration
284+
285+
You can pass server parameters by modifying the `command` section in `docker-compose.yml`:
286+
287+
```yaml
288+
command: ["--max-players", "32", "--announce"]
289+
```
290+
291+
### Persistent Data
292+
293+
The Docker configuration mounts a volume to `/app` inside the container. This allows you to:
294+
- Persist server configuration files
295+
- Add custom packages and assets
296+
- Access server logs
297+
- Maintain saved data between container restarts
298+
299+
### Updating the Server
300+
301+
To update to the latest version:
302+
303+
```shell
304+
docker-compose pull
305+
docker-compose up -d
306+
```
307+
308+
:::info Community Resource
309+
310+
The Docker setup is maintained by the community. For more details, visit the [nanos-world-server Docker repository](https://github.com/olivatooo/nanos-world-server).
311+
216312
:::

0 commit comments

Comments
 (0)