feat(Docker): Container healthchecks (#2951)

This commit is contained in:
h0lysp4nk
2020-05-24 19:18:46 +01:00
committed by GitHub
parent f72788446f
commit 1fc82e7f16
4 changed files with 11 additions and 2 deletions

View File

@@ -4,6 +4,7 @@ services:
ac-database:
image: azerothcore/database
restart: unless-stopped
build:
context: .
dockerfile: ./docker/database/Dockerfile
@@ -22,6 +23,7 @@ services:
stdin_open: true
tty: true
image: azerothcore/worldserver
restart: unless-stopped
build:
context: ./docker/worldserver
dockerfile: Dockerfile
@@ -47,6 +49,7 @@ services:
ac-authserver:
image: azerothcore/authserver
restart: unless-stopped
build:
context: ./docker/authserver
dockerfile: Dockerfile

View File

@@ -1,7 +1,9 @@
FROM ubuntu:bionic
# install the required dependencies to run the authserver
RUN apt update && apt install -y libmysqlclient-dev libssl-dev libace-6.* libace-dev;
RUN apt update && apt install -y libmysqlclient-dev libssl-dev libace-6.* libace-dev net-tools;
HEALTHCHECK --interval=5s --timeout=15s --start-period=30s --retries=3 CMD netstat -lnpt | grep :3724 || exit 1
# run the authserver located in the directory "docker/authserver/bin" of the host machine
CMD ["/azeroth-server/bin/authserver"]

View File

@@ -24,3 +24,5 @@ COPY --from=builder /azerothcore/env/dist/sql /sql
# adding the "generate-databases.sh" to the directory "/docker-entrypoint-initdb.d"
# because all scripts included in that directory will automatically be executed when the docker container starts
COPY docker/database/generate-databases.sh /docker-entrypoint-initdb.d
HEALTHCHECK --interval=5s --timeout=15s --start-period=30s --retries=3 CMD mysqladmin ping -h localhost

View File

@@ -1,7 +1,9 @@
FROM ubuntu:bionic
# install the required dependencies to run the authserver
RUN apt update && apt install -y libmysqlclient-dev libssl-dev libace-6.* libace-dev libreadline-dev;
RUN apt update && apt install -y libmysqlclient-dev libssl-dev libace-6.* libace-dev libreadline-dev net-tools;
HEALTHCHECK --interval=5s --timeout=15s --start-period=30s --retries=3 CMD netstat -lnpt | grep :8085 || exit 1
# run the worldserver located in the directory "docker/worldserver/bin" of the host machine
CMD ["/azeroth-server/bin/worldserver"]