Files
Impostor/docs/Running-the-server.md
T
a653fe57fd Improving Documentation (#175)
* Update README.md

Removed outdated information
Added instructions for other devices

* Updated README to add Android 11 instructions

* Formatting

* Update Running-the-server.md

* Formatting

* Formatting

* Adding a more verbose explanation on configs

* Create TROUBLESHOOTING.md

* Option for windows users to use the website instead of the client

* Small tweaks to make docs more professional

* Fixing grammatical errors(Part 1)

* Fixing grammatical errors(Part 2)

* Fixing grammatical errors (Part 3)

* Update README.md

* Update README.md

* Fixing formatting

* Update README.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update README.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update README.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/Running-the-server.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/Server-configuration.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/Server-configuration.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/Server-configuration.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/TROUBLESHOOTING.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/TROUBLESHOOTING.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/TROUBLESHOOTING.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update docs/TROUBLESHOOTING.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update README.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>

* Update README.md

* Update Server-configuration.md

* Update TROUBLESHOOTING.md

* Update TROUBLESHOOTING.md

* Update Server-configuration.md

* Update TROUBLESHOOTING.md

* Update TROUBLESHOOTING.md

* Update Server-configuration.md

Co-authored-by: AlexejheroYTB <alexejhero@gmail.com>
Co-authored-by: AeonLucid <aeonlucid@outlook.com>
2020-11-30 20:04:23 +01:00

2.9 KiB

Running the server

There are currently two modes to run the Impostor server in. The first way is the simplest one and is the one you should probably use. The other way will distribute players across other servers and is a more advanced configuration.

Single server

Without docker

  1. Install the .NET 5.0 runtime.
  2. Find the latest dev release.
  3. Download either the Windows or the Linux version.
  4. Extract the zip.
  5. Modify config.json to your liking. Documentation can be found here (this step is mandatory if you want to expose this server to other devices)
  6. Run Impostor.Server.exe (Windows) / Impostor.Server (Linux)

Using docker

Docker Image Docker Image

docker run -p 22023:22023/udp aeonlucid/impostor:nightly

Using docker-compose

version: '3.4'

services:
  impostor:
    image: aeonlucid/impostor:nightly
    container_name: impostor
    ports:
      - 22023:22023/udp
    volumes:
      - /path/to/local/config.json:/app/config.json # For easy editing of the config
      - /path/to/local/plugins:/app/plugins         # Only needed if using plugins
      - /path/to/local/libraries:/app/libraries     # Only needed if using external libraries

Multiple servers

Follow the steps from the single server on two or more servers.

Master server

The master server will accept client connections and redirect them to the other servers listed in the configuration. It will not host any games itself.

Example configuration:

{
  "Server": {
    "PublicIp": "127.0.0.1",
    "PublicPort": 22023,
    "ListenIp": "0.0.0.0",
    "ListenPort": 22023
  },
  "ServerRedirector": {
    "Enabled": true,
    "Master": true,
    "Locator": {
      "Redis": "",
      "UdpMasterEndpoint": "127.0.0.1:22023"
    },
    "Nodes": [
      {
        "Ip": "127.0.0.1",
        "Port": 22024
      }
    ]
  }
}

Node servers

The node server should have ServerRedirector enabled too, but Master must be disabled. Nodes do not need to be aware of each other.

Example configuration:

{
  "Server": {
    "PublicIp": "127.0.0.1",
    "PublicPort": 22024,
    "ListenIp": "0.0.0.0",
    "ListenPort": 22024
  },
  "ServerRedirector": {
    "Enabled": true,
    "Master": false,
    "Locator": {
      "Redis": "",
      "UdpMasterEndpoint": "127.0.0.1:22023"
    }
  }
}