Feat(Docker/bash): docker-compose system rework (#4488)
## ⚠️ATTENTION! ⚠️ Upgrading procedure: **Database:** After this PR will be merged you need to backup your DB first (you can use the db-assembler or any mysql client to generate the dump) and restore it after. The reason is that we use now docker named volumes instead of binded ones to improve performance. **Conf & client data**: if you use the default configuration, both the etc and the data folder are now available inside the **/env/docker**. Finally, you can cleanup the /docker folder previously used by our system. ## Changes Proposed: This PR will implement the [devcontainer ](https://code.visualstudio.com/docs/remote/containers) feature for VSCode. Allowing us to develop and debug directly within the container in the same way on all OSes. * Implemented support for vscode dev-container feature by remote-extension suite * Docker performance optimizations for MacOS and non-linux hosts * Bash system improvements * Implemented first command using Deno runtime environment (typescript) and [commander.js] * Implemented wait mechanism for db_assembler * Implemented db migration command * possibility to run the authserver and worldserver with GDB using the integrated simple-restarter * Implemented docker multi-stage mechanism to use one single Dockerfile for all the services * client-data downloader now creates a placeholder to avoid downloading the same version of data files multiple times * deployment of pre-compiled docker images on [docker hub](https://hub.docker.com/u/acore), you can test them [here](https://github.com/azerothcore/acore-docker)
This commit is contained in:
23
conf/dist/env.docker
vendored
Normal file
23
conf/dist/env.docker
vendored
Normal file
@@ -0,0 +1,23 @@
|
||||
#
|
||||
# Create a .env file in the root folder and use the following
|
||||
# variables to configure your docker-compose
|
||||
#
|
||||
|
||||
DOCKER_AC_ENV_FILE=
|
||||
|
||||
DOCKER_DATA=./env/docker/data
|
||||
DOCKER_ETC=./env/docker/etc
|
||||
DOCKER_LOGS=./env/docker/logs
|
||||
DOCKER_CONF=./conf
|
||||
|
||||
DOCKER_WORLD_EXTERNAL_PORT=8085
|
||||
DOCKER_AUTH_EXTERNAL_PORT=3724
|
||||
DOCKER_DB_EXTERNAL_PORT=3306
|
||||
DOCKER_DB_ROOT_PASSWORD=password
|
||||
DOCKER_SOAP_EXTERNAL_PORT=7878
|
||||
|
||||
# To maximize the performance on MAC you can change the DOCKER_EXTENDS_BIND variable
|
||||
# to "abstract-no-bind", however it won't bind the host directory inside the container.
|
||||
# It means that you need to work directly within the container using a tool
|
||||
# like the VScode dev-container of the remote-extension suite
|
||||
DOCKER_EXTENDS_BIND=abstract-bind
|
||||
Reference in New Issue
Block a user