diff options
| author | EPICGAMES\thierry.begin <[email protected]> | 2024-04-08 10:27:09 -0400 |
|---|---|---|
| committer | EPICGAMES\thierry.begin <[email protected]> | 2024-04-08 10:27:09 -0400 |
| commit | 1e41a4d7f7ece23134020024fa5ca2c64b766944 (patch) | |
| tree | 86a9abdd804a30483b885a074fd33596ec8293e4 /Dockerfile | |
| parent | 5.4.3 (diff) | |
| download | zen-1e41a4d7f7ece23134020024fa5ca2c64b766944.tar.xz zen-1e41a4d7f7ece23134020024fa5ca2c64b766944.zip | |
Add docker support
Diffstat (limited to 'Dockerfile')
| -rw-r--r-- | Dockerfile | 40 |
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 |