{"id":23285770,"url":"https://github.com/BrettMayson/Arma3Server","last_synced_at":"2025-08-21T17:31:14.286Z","repository":{"id":39659312,"uuid":"210103420","full_name":"BrettMayson/Arma3Server","owner":"BrettMayson","description":"Docker - Arma 3 Dedicated Server","archived":false,"fork":false,"pushed_at":"2024-05-22T18:51:40.000Z","size":10587,"stargazers_count":97,"open_issues_count":12,"forks_count":65,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-05-22T19:57:36.518Z","etag":null,"topics":["arma","arma-server","arma3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BrettMayson.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-09-22T06:49:17.000Z","updated_at":"2024-05-22T18:51:45.000Z","dependencies_parsed_at":"2023-02-08T10:31:59.042Z","dependency_job_id":"703ad75e-4e9a-4d79-a82d-94258f150c29","html_url":"https://github.com/BrettMayson/Arma3Server","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrettMayson%2FArma3Server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrettMayson%2FArma3Server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrettMayson%2FArma3Server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BrettMayson%2FArma3Server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BrettMayson","download_url":"https://codeload.github.com/BrettMayson/Arma3Server/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":230523744,"owners_count":18239441,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["arma","arma-server","arma3"],"created_at":"2024-12-20T02:00:58.195Z","updated_at":"2025-08-21T17:31:14.270Z","avatar_url":"https://github.com/BrettMayson.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# Arma 3 Dedicated Server\n\nAn Arma 3 Dedicated Server. Updates to the latest version every time it is restarted.\n\n## Usage\n\n### Docker CLI\n\n```s\n    docker create \\\n        --name=arma-server \\\n        -p 2302:2302/udp \\\n        -p 2303:2303/udp \\\n        -p 2304:2304/udp \\\n        -p 2305:2305/udp \\\n        -p 2306:2306/udp \\\n        -v path/to/missions:/arma3/mpmissions \\\n        -v path/to/configs:/arma3/configs \\\n        -v path/to/mods:/arma3/mods \\\n        -v path/to/servermods:/arma3/servermods \\\n        -e ARMA_CONFIG=main.cfg \\\n        -e STEAM_USER=myusername \\\n        -e STEAM_PASSWORD=mypassword \\\n        ghcr.io/brettmayson/arma3server/arma3server:latest\n```\n\n### docker-compose\n\nUse the docker-compose.yml file inside a folder. It will automatically create 4 folders in which the missions, configs, mods and servermods can be loaded.\n\nCopy the `.env.example` file to `.env`, containing at least `STEAM_USER` and `STEAM_PASSWORD`.\n\nUse `docker-compose start` to start the server.\n\nUse `docker-compose logs` to see server logs.\n\nUse `docker-compose down` to shutdown the server.\n\nThe `network_mode: host` can be changed to explicit ports if needed.\n\nUse `docker-compose up -d` to start the server, detached.\n\nSee [Docker-compose](https://docs.docker.com/compose/install/#install-compose) for an installation guide.\n\nProfiles are saved in `/arma3/configs/profiles`\n\n## Parameters\n\n| Parameter                     | Function                                                  | Default |\n| -------------                 |--------------                                             | - |\n| `-p 2302-2306`                | Ports required by Arma 3 |\n| `-v /arma3/mpmission`         | Folder with MP Missions |\n| `-v /arma3/configs`           | Folder containing config files |\n| `-v /arma3/mods`              | Mods that will be loaded by clients |\n| `-v /arma3/servermods`        | Mods that will only be loaded by the server |\n| `-e PORT`                     | Port used by the server, (uses PORT to PORT+3)            | 2302 |\n| `-e ARMA_BINARY`              | Arma 3 server binary to use, `./arma3server_x64` for x64   | `./arma3server` |\n| `-e ARMA_CONFIG`              | Config file to load from `/arma3/configs`                 | `main.cfg` |\n| `-e ARMA_PARAMS`              | Additional Arma CLI parameters |\n| `-e ARMA_PROFILE`             | Profile name, stored in `/arma3/configs/profiles`         | `main` |\n| `-e ARMA_WORLD`               | World to load on startup                                  | `empty` |\n| `-e ARMA_LIMITFPS`            | Maximum FPS | `1000` |\n| `-e ARMA_CDLC`                | cDLCs to load |\n| `-e STEAM_BRANCH`             | Steam branch used by steamcmd | `public` |\n| `-e STEAM_BRANCH_PASSWORD`    | Steam branch password used by steamcmd |\n| `-e STEAM_USER`               | Steam username used to login to steamcmd |\n| `-e STEAM_PASSWORD`           | Steam password |\n| `-e HEADLESS_CLIENTS`         | Launch n number of headless clients                       | `0` |\n| `-e HEADLESS_CLIENTS_PROFILE` | Headless client profile name (supports placeholders)      | `$profile-hc-$i` |\n| `-e MODS_LOCAL`               | Should the mods folder be loaded | `true` |\n| `-e MODS_PRESET`              | An Arma 3 Launcher preset to load |\n| `-e SKIP_INSTALL`             | Skip Arma 3 installation | `false` |\n| `-e CLEAR_KEYS`               | Clear the keys directory every launch (keys will still be copied from mods) | `false` |\n\nThe Steam account does not need to own Arma 3, but must have Steam Guard disabled.\n\nList of Steam branches can be found on the Community Wiki, [Arma 3: Steam Branches](https://community.bistudio.com/wiki/Arma_3:_Steam_Branches)\n\n## Creator DLC\n\nTo use a Creator DLC the `STEAM_BRANCH` must be set to `creatordlc`\n\n| Name | Flag |\n| ---- | ---- |\n| [CSLA Iron Curtain](https://store.steampowered.com/app/1294440/Arma_3_Creator_DLC_CSLA_Iron_Curtain/) | CSLA |\n| [Global Mobilization - Cold War Germany](https://store.steampowered.com/app/1042220/Arma_3_Creator_DLC_Global_Mobilization__Cold_War_Germany/) | GM |\n| [S.O.G. Prairie Fire](https://store.steampowered.com/app/1227700/Arma_3_Creator_DLC_SOG_Prairie_Fire) | vn |\n| [Western Sahara](https://store.steampowered.com/app/1681170/Arma_3_Creator_DLC_Western_Sahara/) | WS |\n| [Spearhead 1944](https://store.steampowered.com/app/1175380/Arma_3_Creator_DLC_Spearhead_1944/) | spe |\n| [Reaction Forces](https://store.steampowered.com/app/2647760/Arma_3_Creator_DLC_Reaction_Forces/) | rf |\n| [Expeditionary Forces](https://store.steampowered.com/app/2647830/Arma_3_Creator_DLC_Expeditionary_Forces/) | ef |\n\nBohemia-updated list of codes here: \u003chttps://community.bistudio.com/wiki/Category:Arma_3:_CDLCs\u003e\n\n### Example\n\n`-e ARMA_CDLC=\"csla;gm;vn;ws;spe\"`\n\n## Loading mods\n\n### Local\n\n1. Place the mods inside `/mods` or `/servermods`.\n2. Be sure that the mod folder is all lowercase and does not show up with quotation marks around it when listing the directory eg `'@ACE(v2)'`\n3. Run the following command from the mods and/or servermods directory to confirm that all the files are lowercase.\n    `find . -depth -exec rename 's/(.*)\\/([^\\/]*)/$1\\/\\L$2/' {} \\;`\n    If this is NOT the case, the mods will prevent the server from booting.\n4. Make sure that each mod contains a lowercase `/addons` folder. This folder also needs to be lowercase in order for the server to load the required PBO files inside.\n5. Start the server.\n\n### Workshop\n\nSet the environment variable `MODS_PRESET` to the HTML preset file exported from the Arma 3 Launcher. The path can be local file or a URL. A volume can be created at `/arma3/steamapps/workshop/content/107410` to preserve the mods between containers.\n\n`-e MODS_PRESET=\"my_mods.html\"`\n\n`-e MODS_PRESET=\"http://example.com/my_mods.html\"`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBrettMayson%2FArma3Server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FBrettMayson%2FArma3Server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FBrettMayson%2FArma3Server/lists"}