Skip to content

Commit 3ea3ae8

Browse files
committed
Merge branch 'master' of github.com:mangosone/server
2 parents e66a415 + fa71b87 commit 3ea3ae8

32 files changed

+4504
-2249
lines changed

.github/workflows/docker_build.yml

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Docker Build
2+
on:
3+
push:
4+
branches: [ master ]
5+
pull_request:
6+
branches: [ master ]
7+
8+
jobs:
9+
build:
10+
runs-on: ubuntu-latest
11+
12+
steps:
13+
- uses: actions/checkout@v2
14+
with:
15+
token: ${{ secrets.GITHUB_TOKEN }}
16+
17+
- name: Checkout Submodules
18+
shell: bash
19+
run: |
20+
git submodule init && git submodule update
21+
22+
- name: Set up Docker Buildx
23+
uses: docker/setup-buildx-action@v2
24+
25+
- name: Build Mangosd Docker image
26+
run: |
27+
docker build -t mangosd:latest -f dockercontainer/DockerFile-mangosd .
28+
29+
- name: Build Realmd Docker image
30+
run: |
31+
docker build -t realmd:latest -f dockercontainer/DockerFile-realmd .

dockercontainer/DockerFile-mangosd

+16-13
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,36 @@
11
#Build image
2-
FROM ubuntu:18.04 as build-step
2+
FROM ubuntu:22.04 AS build-step
33

4-
RUN apt-get -y update
5-
RUN apt-get -y install curl autoconf automake libbz2-dev libace-dev libssl-dev libmysqlclient-dev libtool build-essential gpg wget lsb-release software-properties-common
4+
ENV TZ=US DEBIAN_FRONTEND=noninteractive
65

7-
RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null && \
8-
echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ bionic main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null && \
9-
apt-get update
10-
RUN apt-get -y install cmake
6+
RUN apt-get -y update
7+
RUN apt-get -y install curl autoconf automake libbz2-dev libace-dev libssl-dev libmysqlclient-dev libtool \
8+
build-essential lsb-release software-properties-common cmake libreadline-dev clang
119

1210
COPY . /mangoserver
13-
RUN mkdir /mangoserver/build
11+
RUN mkdir /mangoserver/build && cd /mangoserver/build
1412
WORKDIR /mangoserver/build
1513

1614
#Install mangos
17-
RUN cmake .. -DCMAKE_INSTALL_PREFIX=/mangos -DBUILD_MANGOSD=1 -DBUILD_REALMD=0 -DBUILD_TOOLS=0
15+
RUN cmake .. -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DCMAKE_INSTALL_PREFIX=/mangos -DBUILD_MANGOSD=1 -DBUILD_REALMD=0 -DBUILD_TOOLS=0
1816
RUN make -j4
1917
RUN make install
2018

2119
#Runtime image
22-
FROM ubuntu:18.04 as runtime
20+
FROM ubuntu:22.04 AS runtime
21+
22+
ENV TZ=US DEBIAN_FRONTEND=noninteractive
2323

2424
RUN apt-get -y update && apt-get -y upgrade
25-
RUN apt-get -y install libmysqlclient20 openssl
25+
RUN apt-get -y install libmysqlclient-dev openssl lua-readline
2626

2727
COPY --from=build-step /mangos /mangos
28-
COPY --from=build-step /etc/mangosd.conf.dist ../etc/mangosd.conf.dist
28+
COPY --from=build-step /etc/mangosd.conf.dist /mangos/etc/mangosd.conf.dist
29+
30+
RUN echo "/mangos/lib" >> /etc/ld.so.conf && ldconfig
31+
2932
WORKDIR /mangos/bin
3033
RUN chmod +x mangosd
3134

3235
EXPOSE 8085
33-
ENTRYPOINT [ "./mangosd" ]
36+
ENTRYPOINT [ "./mangosd","-c","/mangos/etc/mangosd.conf" ]

dockercontainer/DockerFile-realmd

+10-12
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,31 @@
11
#Build image
2-
FROM ubuntu:18.04 as build-step
2+
FROM ubuntu:22.04 AS build-step
3+
4+
ENV TZ=US DEBIAN_FRONTEND=noninteractive
35

46
RUN apt-get -y update
5-
RUN apt-get -y install curl autoconf automake libbz2-dev libace-dev libssl-dev libmysqlclient-dev libtool build-essential gpg wget
7+
RUN apt-get -y install curl autoconf automake libbz2-dev libace-dev libssl-dev libmysqlclient-dev libtool \
8+
build-essential lsb-release software-properties-common cmake libreadline-dev clang
69

7-
RUN wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | gpg --dearmor - | tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null && \
8-
echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ bionic main' | tee /etc/apt/sources.list.d/kitware.list >/dev/null && \
9-
apt-get update
10-
RUN apt-get -y install cmake
11-
1210
COPY . /mangoserver
1311
RUN mkdir /mangoserver/build
1412
WORKDIR /mangoserver/build
1513

1614
#Install mangos
17-
RUN cmake .. -DCMAKE_INSTALL_PREFIX=/mangos -DBUILD_MANGOSD=0 -DBUILD_REALMD=1 -DBUILD_TOOLS=0
15+
RUN cmake .. -DCMAKE_CXX_COMPILER=clang++ -DCMAKE_C_COMPILER=clang -DCMAKE_INSTALL_PREFIX=/mangos -DBUILD_MANGOSD=0 -DBUILD_REALMD=1 -DBUILD_TOOLS=0
1816
RUN make -j4
1917
RUN make install
2018

2119
#Runtime image
22-
FROM ubuntu:18.04 as runtime
20+
FROM ubuntu:22.04 AS runtime
2321

2422
RUN apt-get -y update && apt-get -y upgrade
25-
RUN apt-get -y install libmysqlclient20 openssl
23+
RUN apt-get -y install libmysqlclient-dev openssl
2624

2725
COPY --from=build-step /mangos /mangos
28-
COPY --from=build-step /etc/realmd.conf.dist ../etc/realmd.conf.dist
26+
COPY --from=build-step /etc/realmd.conf.dist /mangos/etc/realmd.conf.dist
2927
WORKDIR /mangos/bin
3028
RUN chmod +x realmd
3129

3230
EXPOSE 3724
33-
ENTRYPOINT [ "./realmd" ]
31+
ENTRYPOINT [ "./realmd","-c","/mangos/etc/realmd.conf" ]

src/CMakeLists.txt

+1-1
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ add_subdirectory(shared)
2323
add_subdirectory(genrev)
2424

2525
# Needs to link against mangos_world.lib
26-
if(BUILD_MANGOSD OR BUILD_TOOLS)
26+
if(BUILD_MANGOSD)
2727
# Build the mangos game library
2828
add_subdirectory(game)
2929
endif()

0 commit comments

Comments
 (0)