forked from Misterblue/vircadia-domain-server-docker
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathDockerfile-base
78 lines (65 loc) · 2.56 KB
/
Dockerfile-base
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
# build a domain-server using overte-builder
FROM ubuntu:20.04 as overte-server-build
RUN echo UTC >/etc/timezone
# The tag to pull from the Project Athena source repository. (Note defn in next stage)
ARG REPO=https://github.com/overte-org/overte
ARG TAG=master
ARG OVERTE_HOME=/root/Overte
# Tell the libraries not to use the interactive dialogs
ARG DEBIAN_FRONTEND=noninteractive
ARG TERM=linux
RUN apt-get update \
&& apt-get upgrade -y \
&& apt-get install -y git vim libfindbin-libs-perl sudo
RUN mkdir -p /var/lib/overte
RUN mkdir -p /root/Overte
# Get the builder
ADD https://api.github.com/repos/overte-org/overte-builder/git/refs/heads/master overte-builder-git-version.json
RUN cd /root/Overte \
&& git clone https://github.com/overte-org/overte-builder.git \
&& cd overte-builder \
&& chmod +x overte-builder
# Load the required libraries (the first time just loads packages)
RUN cd /root/Overte/overte-builder \
&& ./overte-builder \
--repo=$REPO \
--tag=$TAG \
--build=domain-server,ice-server,assignment-client \
--release-type=production \
--destdir $OVERTE_HOME \
--auto
# Create a list of all the source dependencies needed for later phase
RUN cd /root/Overte/overte-builder \
&& ./overte-builder \
--repo=$REPO \
--tag=$TAG \
--destdir $OVERTE_HOME \
--keep-source \
--get-source-deps ubuntu-20.04 \
--release-type=production \
--auto > /root/Overte/builder-deps.txt
RUN git clone $REPO $OVERTE_HOME/source \
&& cd $OVERTE_HOME/source \
&& git checkout $TAG
# Build the server pieces
RUN cd /root/Overte/overte-builder \
&& sed -i "s/'has_binary_qt_package' => 0/'has_binary_qt_package' => 1/g" distros/ubuntu-20.04.cfg
RUN cd /root/Overte/overte-builder \
&& export OVERTE_USE_QT_VERSION=5.15.5 \
&& ./overte-builder \
--repo=$REPO \
--tag=$TAG \
--destdir $OVERTE_HOME \
--keep-source \
--build=server \
--release-type=production \
--skip-systemd-restart \
--optimization-level=compatible \
--auto
# overte-builder puts the built image into 'install-$TAG'. Move to "install-master" so later code is simplier
RUN if [ ! -d /root/Overte/install_master ] ; then \
mv /root/Overte/overte_20* /root/Overte/install_master ; \
fi
COPY files/buildVersion.sh /tmp
RUN mkdir -p /root/Overte/version \
&& /tmp/buildVersion.sh /root/Overte/source /root/Overte/version $TAG