aboutsummaryrefslogtreecommitdiff
path: root/Dockerfile
diff options
context:
space:
mode:
authorEPICGAMES\thierry.begin <[email protected]>2024-04-08 10:27:09 -0400
committerEPICGAMES\thierry.begin <[email protected]>2024-04-08 10:27:09 -0400
commit1e41a4d7f7ece23134020024fa5ca2c64b766944 (patch)
tree86a9abdd804a30483b885a074fd33596ec8293e4 /Dockerfile
parent5.4.3 (diff)
downloadzen-1e41a4d7f7ece23134020024fa5ca2c64b766944.tar.xz
zen-1e41a4d7f7ece23134020024fa5ca2c64b766944.zip
Add docker support
Diffstat (limited to 'Dockerfile')
-rw-r--r--Dockerfile40
1 files changed, 40 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 000000000..f0c033284
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,40 @@
+# Latest Ubuntu LTS release as of November 2022
+FROM docker.io/library/ubuntu:22.04 AS Base
+RUN mkdir /root/zen/
+RUN apt-get update
+
+## SETUP PHASE
+FROM base AS setup
+# installing software-properties-common needed for add-apt-repository
+RUN apt-get install -y software-properties-common
+# adding extra apt repositories for dependencies
+RUN add-apt-repository -y ppa:ubuntu-toolchain-r/test && \
+ add-apt-repository ppa:xmake-io/xmake
+# installing extra dependecies
+RUN apt-get update && \
+ apt-get install -y \
+ curl \
+# netcat \
+ wget \
+ xmake \
+ git \
+ build-essential \
+ zip \
+ pkg-config && \
+ apt install -y --no-install-recommends g++-11
+
+# installing third party dependencies are provided by Microsoft's vcpkg
+RUN git clone https://github.com/microsoft/vcpkg.git ~/zen/vcpkg
+RUN ~/zen/vcpkg/bootstrap-vcpkg.sh
+
+## BUILDING ZENSERVER PHASE
+FROM setup AS build_zenserver
+COPY . /root/zen/main
+RUN export VCPKG_ROOT=~/zen/vcpkg &&\
+ export XMAKE_ROOT=y &&\
+ cd ~/zen/main &&\
+ scripts/ue_build_linux/get_ue_toolchain.sh ./.tmp-ue-toolchain && \
+ scripts/ue_build_linux/ue_build.sh .tmp-ue-toolchain xmake config -y --mode=debug && \
+ scripts/ue_build_linux/ue_build.sh .tmp-ue-toolchain xmake build
+
+RUN cp ~/zen/main/build/linux/x86_64/debug/zenserver usr/bin/zenserver