Skip to content
Open
Show file tree
Hide file tree
Changes from 3 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 5 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,15 @@ SHELL ["/bin/bash", "-o", "pipefail", "-c"]
RUN apt-get update \
&& \
apt-get install -y --no-install-recommends --no-install-suggests \
python3 \
lib32stdc++6 \
lib32gcc-s1 \
wget \
ca-certificates \
lib32gcc-s1 \
lib32stdc++6 \
libcurl4 \
net-tools \
libssl1.1 \
net-tools \
python3 \
wamerican \
wget \
&& \
apt-get remove --purge -y \
&& \
Expand Down
100 changes: 37 additions & 63 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,83 +1,57 @@
# Arma Reforger Dedicated Server

An Arma Reforger dedicated server. Updates to the latest version every time it is restarted.
A lightweight and automated solution for running an Arma Reforger dedicated server. This project ensures your server is always up-to-date with the latest version.

## Usage
## Quick Start

### Docker CLI
### Using Docker CLI

Run the following command to create and start the server:

```sh
docker create \
--name=reforger-server \
-p 2001:2001/udp \
-v path/to/configs:/reforger/Configs \
-v path/to/profiles:/home/profile \
-v path/to/workshop:/reforger/workshop \
-e SERVER_PUBLIC_ADDRESS="public ip" \
-e GAME_NAME="My Docker Reforger Server" \
ghcr.io/acemod/arma-reforger:latest
docker create \
--name=reforger-server \
-p 2001:2001/udp \
-v path/to/configs:/reforger/Configs \
-v path/to/profiles:/home/profile \
-v path/to/workshop:/reforger/workshop \
-e SERVER_PUBLIC_ADDRESS="your.public.ip" \
-e GAME_NAME="My Reforger Server" \
ghcr.io/acemod/arma-reforger:latest
docker start reforger-server
```

If an admin password is not provided, one will be generated and printed to the console.

### Docker-compose

Simply check-out / copy [the provided docker-compose.yml](docker-compose.yml) and adjust to your personal needs.

## Parameters

Check [the Dockerfile](Dockerfile#L32-L67), more docs will come later.

### Configs

By default the configs are generated from the ENV variables in the dockerfile. After the first run the file can be expanded with additional options manually, but the fields will always be overwritten by the ENV variables.

Alternatively, change the `ARMA_CONFIG` variable to a file present in the `Configs` volume. It will be used without modification.

### Experimental server
> **Note**: If you don't provide an admin password, one will be generated and displayed in the console.

To use the experimental server instead of the regular set `STEAM_APPID` variable to `1890870`.
### Using Docker Compose

### Mods
1. Clone the repository and navigate to the `docker-compose-examples` folder.
2. Choose a `docker-compose.yml` file that suits your needs and adjust it as necessary.
3. Start the server:

Workshop mods can be defined in two ways. You can use both or either of those.
```bash
docker-compose up -d
```

#### GAME_MODS_IDS_LIST
4. Stop the server:

A comma separated list of IDs, with an optional version.
```bash
docker-compose down
```

```sh
-e GAME_MODS_IDS_LIST="5965770215E93269=1.0.6,5965550F24A0C152"
```
## Learn More

#### GAME_MODS_JSON_FILE_PATH
For detailed configuration options, advanced usage, and troubleshooting, refer to the [documentation](docs/index.md).

Path to a JSON file that contains array of mod objects.
- **Environment Variables**: Customize your server with a wide range of options.
- **Mods Support**: Add mods using environment variables or JSON files.
- **Multiple Instances**: Run multiple servers on the same machine.
- **RCON**: Enable and configure remote server control.

```sh
-v ${PWD}/mods_file.json:/mods_file.json
-e GAME_MODS_JSON_FILE_PATH="/mods_file.json"
```
## Contributing

```json
[
{
"modId": "597706449575D90B",
"version": "1.1.1"
}
]
```
### RCON

RCON can be activated by defining the `RCON_PASSWORD` variable.

```sh
-e RCON_PASSWORD="ExamplePassword123"
```
Contributions are welcome! Feel free to submit issues or pull requests to improve the project.

The password:
* is required for RCON to start
* does not support spaces
* must be at least 3 characters long
---

Use `-e RCON_PERMISSION=""` to change [permission](https://community.bistudio.com/wiki/Arma_Reforger:Server_Config#permission) for all RCON clients.
Get started today and enjoy a seamless Arma Reforger server experience!
1 change: 1 addition & 0 deletions docker-compose.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,4 @@ services:
environment:
- SERVER_PUBLIC_ADDRESS=public-ip
- GAME_NAME=My Docker Reforger Server
- RCON_PASSWORD=ChangeItOrElse!
Loading