This repository has been archived by the owner on Jan 19, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Dockerfile
94 lines (78 loc) · 2.57 KB
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
FROM arm32v6/alpine:3.10 as builder
ENV TES3MP_VERSION "0.7.0"
ENV TES3MP_VERSION_STRING "0.44.0\n292536439eeda58becdb7e441fe2e61ebb74529e"
ARG BUILD_THREADS="4"
COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static
RUN apk add --no-cache \
libgcc \
libstdc++ \
boost-system \
boost-filesystem \
boost-dev \
luajit-dev \
make \
cmake \
build-base \
openssl-dev \
ncurses \
mesa-dev \
bash \
git \
wget
RUN git clone --depth 1 -b "${TES3MP_VERSION}" https://github.com/TES3MP/openmw-tes3mp.git /tmp/TES3MP \
&& git clone --depth 1 -b "${TES3MP_VERSION}" https://github.com/TES3MP/CoreScripts.git /tmp/CoreScripts \
&& git clone https://github.com/TES3MP/CrabNet.git /tmp/CrabNet \
&& git clone --depth 1 https://github.com/OpenMW/osg.git /tmp/osg
RUN cd /tmp/CrabNet \
&& git reset --hard origin/master \
&& git checkout 4eeeaad2f6c11aeb82070df35169694b4fb7b04b \
&& mkdir build \
&& cd build \
&& cmake -DCMAKE_BUILD_TYPE=Release ..\
&& cmake --build . --target RakNetLibStatic --config Release -- -j ${BUILD_THREADS}
RUN cd /tmp/osg \
&& cmake .
RUN cd /tmp/TES3MP \
&& mkdir build \
&& cd build \
&& RAKNET_ROOT=/tmp/CrabNet/build \
cmake .. \
-DCMAKE_BUILD_TYPE=Release \
-DBUILD_OPENMW_MP=ON \
-DBUILD_OPENMW=OFF \
-DBUILD_OPENCS=OFF \
-DBUILD_BROWSER=OFF \
-DBUILD_BSATOOL=OFF \
-DBUILD_ESMTOOL=OFF \
-DBUILD_ESSIMPORTER=OFF \
-DBUILD_LAUNCHER=OFF \
-DBUILD_MWINIIMPORTER=OFF \
-DBUILD_MYGUI_PLUGIN=OFF \
-DBUILD_OPENMW=OFF \
-DBUILD_WIZARD=OFF \
-DOPENSCENEGRAPH_INCLUDE_DIRS=/tmp/osg/include \
&& make -j ${BUILD_THREADS}
RUN mv /tmp/TES3MP/build /server \
&& mv /tmp/CoreScripts /server/CoreScripts \
&& sed -i "s|home = .*|home = /server/data|g" /server/tes3mp-server-default.cfg \
&& echo -e ${TES3MP_VERSION_STRING} > /server/resources/version \
&& cp /tmp/TES3MP/tes3mp-credits.md /server/ \
&& mkdir /server/data
FROM arm32v6/alpine:3.10
LABEL maintainer="Grim Kriegor <[email protected]>"
LABEL description="Docker image for the TES3MP server"
COPY tmp/qemu-arm-static /usr/bin/qemu-arm-static
RUN apk add --no-cache \
libgcc \
libstdc++ \
boost-system \
boost-filesystem \
boost-program_options \
luajit \
bash
COPY --from=builder /server /server
ADD bootstrap.sh /bootstrap.sh
EXPOSE 25565/udp
VOLUME /data
WORKDIR /server
ENTRYPOINT [ "/bin/bash", "/bootstrap.sh", "--", "./tes3mp-server" ]