{: #git-wiki-toc}
Welcome to the AzerothCore Docker guide!
Installing AzerothCore using Docker is a simplified procedure that has several benefits:
The only requirements are git and Docker.
Before going further, make sure you have docker
and docker-compose
installed in your system by typing in a terminal:
docker --version
docker-compose --version
You should see a similar output:
Note for Windows users: you can use git-bash (the shell included in git) as a terminal.
You need to clone the AzerothCore repository (or use your own fork):
git clone https://github.com/azerothcore/azerothcore-wotlk.git
Now go into the main directory using cd azerothcore-wotlk
. All commands will have to be run inside this folder.
You also need to have the data files. Check the step "5) Download the data files" from the installation guide.
Put your data files into docker/worldserver/data/
which is inside azerothcore-wotlk
.
Inside your terminal (if you use Windows, use git bash), run the following commands inside azerothcore-wotlk'
1) Generate your server configuration files:
./bin/acore-docker-generate-etc
2) Compile AzerothCore:
./bin/acore-docker-build
This will take a while. Meanwhile you can go and drink a glass of wine
3) Run the containers
docker-compose up
Docker will build and run your containers. Meanwhile you will see messages like:
Could not connect to MySQL database at 127.0.0.1: Can't connect to MySQL server on '127.0.0.1' (111)
Retrying in 10 seconds...
Don't panic. Your server processes are simply waiting for the database container to be ready, it can take a while (depends on your machine).
Your server will be up and running shortly.
To access your MySQL database we recommend clients like HeidiSQL (for Windows/Linux+Wine) or SequelPro (for macOS). Use root
as user and 127.0.0.1
as default host.
The default password of the root DB user will be password
.
The total amount of RAM when running all AzerothCore docker containers is less than 2 GB with no players online.
This is an example of a fresh, empty AzerothCore server running with Docker on macOS:
When used on GNU/Linux system, the amount of memory used by Docker is even less.
Using Docker will have the same benefits as using virtual machines, but with much less overhead:
AzerothCore running on macOS with Docker
AzerothCore running on Windows 10 with Docker
For server administrators, we recommend to read the Docker documentation as well as the Docker Compose reference.
If you want to be an administrator of an AzerothCore production server, it helps if you master the basics of Docker usage.
Feel free to ask questions on StackOverflow and link them in the #support-docker channel of our Discord chat. We will be happy to help you!
Faq? Faq you!
By default they are located in docker/authserver/
and docker/worldserver/
.
You can copy the file .env.dist
, renaming the copy in .env
and editing it accordingly to your needs.
In the .env
file you can configure:
data
, etc
and logs
foldersThen your docker-compose up
will automatically locate the .env
with your custom settings.
The docker-compose start
will start your existing containers.
The docker-compose stop
will stop your containers, but it won't remove them.
The docker-compose up
builds, (re)creates, and starts your containers.
The docker-compose down
command will stop your containers, but it also removes the stopped containers as well as any networks that were created.
Warning Once you've deleted your database files they are unrecoverable unless you have a backup.
To remove your database files you firstly want to make sure that your containers have been stopped and removed by typing: docker-compose down
.
After stopping and removing your containers you can proceed to remove the volume by typing: docker volume rm azerothcore-wotlk_ac-database
Note If you've changed your folder name from the default azerothcore-wotlk
the volume name will be slightly different. To find the new volume name you can use the command docker volume ls
. The volume should be labelled something along the lines of xxxx_ac-database
.
You can easily attach/detach from the worldserver console.
First of all, type docker-compose ps
to know the name of your worldserver container, it should be something like azerothcore-wotlk_ac-worldserver_1
.
To attach: open a new terminal tab and type docker attach azerothcore-wotlk_ac-worldserver_1
Note for Windows users: using git bash on Windows you have to prefix this command with winpty
. Example:
winpty docker attach azerothcore-wotlk_ac-worldserver_1
To detach: press ctr+p
and ctrl+q
.
Do NOT try to detach using ctrl+c
or you will kill your worldserver process!