Newer
Older
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
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
FROM ubuntu:18.04
MAINTAINER ETSI STF 549
LABEL description="STF549 Docker Image"
ENV TERM=xterm
ENV HOSTNAME docker-titan-STF549
RUN DEBIAN_FRONTEND=noninteractive apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get install software-properties-common -y \
&& DEBIAN_FRONTEND=noninteractive add-apt-repository ppa:linuxuprising/java -y
RUN DEBIAN_FRONTEND=noninteractive apt-get update \
&& DEBIAN_FRONTEND=noninteractive apt-get --allow-unauthenticated install -y \
autoconf \
bison \
build-essential \
cmake \
curl \
dos2unix \
doxygen \
emacs \
expect \
flex \
g++-8 \
gcc-8 \
gdb \
git-core \
gnutls-bin \
graphviz \
inetutils-ping \
libglib2.0-dev \
libpcap-dev \
libgcrypt-dev \
libncurses5-dev \
libssl-dev \
libtool-bin \
libtool \
libwireshark-dev \
libxml2-dev \
lsof \
ntp \
openssh-server \
pkg-config \
qt5-default \
qttools5-dev \
qtmultimedia5-dev \
libqt5svg5-dev \
subversion \
sudo \
sshpass \
tcpdump \
texlive-font-utils \
tshark \
tzdata \
valgrind \
vim \
vsftpd \
xutils-dev \
tree \
unzip \
wget \
xsltproc \
&& DEBIAN_FRONTEND=noninteractive apt-get autoremove --purge -y \
&& DEBIAN_FRONTEND=noninteractive apt-get autoclean \
&& rm -rf /var/lib/apt/lists/*
RUN echo "docker-titan-STF549" > /etc/hostname \
&& echo "root:etsi" | chpasswd
RUN useradd --create-home --shell /bin/bash --user-group etsi --groups sudo \
&& echo "etsi:etsi" | chpasswd \
&& adduser etsi sudo
RUN cd /home/etsi \
&& echo "" >> /home/etsi/.bashrc \
&& echo "export HOME=/home/etsi" >> /home/etsi/.bashrc \
&& echo "export LD_LIBRARY_PATH=/home/etsi/dev/etsi_emcom/lib:$LD_LIBRARY_PATH" >> /home/etsi/.bashrc \
&& echo "export PATH=/home/etsi/bin:$PATH" >> /home/etsi/.bashrc \
&& echo "cd /home/etsi" >> /home/etsi/.bashrc \
&& echo ". ./devenv.bash" >> /home/etsi/.bashrc \
&& . /home/etsi/.bashrc \
&& mkdir -p bin lib include tmp frameworks docs man dev \
&& chown etsi:etsi bin lib include tmp frameworks docs man dev \
&& echo "etsi ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
# Seems that COPY does not work as expected, to be investaged
#==> Fallback to more secured solution
#COPY [^.]* /home/etsi/dev/STF549_Ng112/
#COPY home home/etsi
RUN git clone https://forge.etsi.org/gitlab/emergency-communications/NG112.git /home/etsi/dev/STF549_Ng112
RUN chown -R etsi /home/etsi/dev/STF549_Ng112/ && cd /home/etsi/dev/STF549_Ng112
USER etsi
RUN cd /home/etsi/frameworks \
&& git clone https://git.savannah.gnu.org/git/osip.git ./osip \
&& cd osip \
&& ./autogen.sh \
&& ./configure --prefix=/home/etsi \
&& make && make install
RUN cd /home/etsi/frameworks \
&& wget -q 'http://ftp.halifax.rwth-aachen.de/eclipse//technology/epp/downloads/release/oxygen/2/eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz' -Oeclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz \
&& tar -zxvf ./eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz \
&& rm -f ./eclipse-cpp-oxygen-2-linux-gtk-x86_64.tar.gz \
&& cd /home/etsi/dev/STF549_Ng112 \
&& cd /home/etsi/dev/STF549_Ng112/ttcn \
&& git clone https://forge.etsi.org/gitlab/LIBS/LibSip.git ./LibSip \
&& git clone https://forge.etsi.org/gitlab/LIBS/LibIms.git ./LibIms \
&& git clone https://forge.etsi.org/gitlab/LIBS/LibCommon.git ./LibCommon \
&& git clone -bSTF525 https://forge.etsi.org/gitlab/LIBS/LibIts ./LibIts \
&& cd /home/etsi/dev/STF549_Ng112/ttcn/LibIts \
&& rm -fr asn1 t3q xsd \
&& cd ttcn && rm -fr BTP CALM CAM Common DCC DENM GeoNetworking Ipv6OverGeoNetworking IVIM MapemSpatem Pki Security SremSsem V2G \
&& cd /home/etsi/dev/STF549_Ng112/scripts \
&& chmod 775 *.bash devenv.bash.* \
&& cd /home/etsi \
&& ln -sf /home/etsi/dev/STF549_Ng112/scripts/devenv.bash.ubuntu /home/etsi/devenv.bash \
&& ls -ltr /home/etsi \
&& export HOME=/home/etsi \
&& . /home/etsi/devenv.bash \
&& cd /home/etsi/dev/STF549_Ng112/scripts \
&& ./build_titan.bash \
&& . /home/etsi/devenv.bash \
&& ./update_emcom_project.bash \
&& cd /home/etsi/dev/etsi_emcom/src/AtsNg112/objs \
&& ../bin/ng112_generate_makefile.bash
# That's all Floks