This is a project that is based on the VMaNGOS core running on Docker.
Source code from https://github.com/vmangos/core.
The configuration should be set to work with localhost games and can be edited by changing the realmd.realmd table and adding the correct server IP. Changing the exposed port for mysql in the Docker Compose file should also be considered if not removing it all together.
Make sure operating system is 64bit and that thread count should be 2 for <= 4GB ram.
- /src/data
- /src/data/maps
- /src/data/mmaps
- /src/data/vmaps
- /src/data/5875(adjust according to patch release)
- /src/data/5875/dbc
- Server config: /config
- Database config: /env/db.env
- VMaNGOS: /vmangos
- Database volume: /var/lib/docker/volumes/vmangos_database
- CCache: /src/ccache
a). Run setup.py for creating containers and for managing this project. Default flags are already applied and a help menu can be shown.
chmod +x
./setup.py
Help menu:
./setup.py -h
Use mysql-workbench or from the vmangos_database container edit the ip address column in realmd.realmlist to set the ip that will be exposed for connections(public ip required for internet). Using the account and password for the mangos user or the root user as can be configured in db.env.
./setup.py -m 0 --update
./setup.py --ccache
./setup.py --docker
usage: setup.py [-h] [-m M] [--update] [-t T] [-u U] [-c C] [-a A] [--ccache] [--docker] [-v]
Vmangos-Docker cli
options:
-h, --help show this help message and exit
-m M Select mode
0 = default(default)
3 = reset all files
4 = ccache clean
5 = Docker clean
--update Use update mode
-t T Input number of threads to use for compiling, values 1-2(2 default) for <4GB ram
-c C Input Client version to compile
4222 = 1.2.4
4297 = 1.3.1
4375 = 1.4.2
4449 = 1.5.1
4544 = 1.6.1
4695 = 1.7.1
4878 = 1.8.4
5086 = 1.9.4
5302 = 1.10.2
5464 = 1.11.2
5875 = 1.12.1(default)
-a A Enable anticheat
0 = Disable Anticheat
1 = Enable Anticheat(default)
--ccache Clean CCache(exclusive)
--docker Docker Clean(exclusive)
-v Increase output verbosity
Example command config
./setup.py -m0 -t2 -c5875 -a1
docker compose up (Creates and runs containers with console output)
docker compose up -d (Creates and detaches from running containers)
docker compose ps (Lists all running containers)
docker compose stop (Stops containers without destroying)
docker compose restart (Restart containers)
docker compose down (Destroys containers)
docker compose down -v (Destroys containers and volumes)
docker compose exec vmangos_(container) bash (Executes bash inside container of choice)
docker ps (Lists all running docker processes)
#using tmux/screen is recommended to not kill
docker attach (applies to the vmangos_mangos/realmd/database) session