]> git.proxmox.com Git - mirror_frr.git/blob - tests/topotests/Dockerfile
Merge pull request #5439 from mjstapp/nhg_add_labels
[mirror_frr.git] / tests / topotests / Dockerfile
1 FROM ubuntu:18.04
2
3 RUN export DEBIAN_FRONTEND=noninteractive \
4 && apt-get update \
5 && apt-get install -y \
6 autoconf \
7 binutils \
8 bison \
9 ca-certificates \
10 flex \
11 gdb \
12 git \
13 gpg \
14 install-info \
15 iputils-ping \
16 iproute2 \
17 less \
18 libtool \
19 libjson-c-dev \
20 libpcre3-dev \
21 libpython-dev \
22 libreadline-dev \
23 libc-ares-dev \
24 libcap-dev \
25 man \
26 mininet \
27 pkg-config \
28 python-pip \
29 python-sphinx \
30 rsync \
31 strace \
32 tcpdump \
33 texinfo \
34 tmux \
35 valgrind \
36 vim \
37 wget \
38 x11-xserver-utils \
39 xterm \
40 && pip install \
41 exabgp==3.4.17 \
42 ipaddr \
43 pytest \
44 && rm -rf /var/lib/apt/lists/*
45
46 RUN export DEBIAN_FRONTEND=noninteractive \
47 && apt-key adv --keyserver keyserver.ubuntu.com --recv-key 5418F291D0D4A1AA \
48 && echo "deb https://deb.frrouting.org/frr bionic frr-stable" > /etc/apt/sources.list.d/frr.list \
49 && apt-get update \
50 && apt-get install -y libyang-dev \
51 && rm -rf /var/lib/apt/lists/*
52
53 RUN groupadd -r -g 92 frr \
54 && groupadd -r -g 85 frrvty \
55 && useradd -c "FRRouting suite" \
56 -d /var/run/frr \
57 -g frr \
58 -G frrvty \
59 -r \
60 -s /sbin/nologin \
61 frr \
62 && useradd -d /var/run/exabgp/ \
63 -s /bin/false \
64 exabgp
65
66 # Configure coredumps
67 RUN echo "" >> /etc/security/limits.conf; \
68 echo "* soft core unlimited" >> /etc/security/limits.conf; \
69 echo "root soft core unlimited" >> /etc/security/limits.conf; \
70 echo "* hard core unlimited" >> /etc/security/limits.conf; \
71 echo "root hard core unlimited" >> /etc/security/limits.conf
72
73 # Copy run scripts to facilitate users wanting to run the tests
74 COPY docker/inner /opt/topotests
75
76 ENV PATH "$PATH:/opt/topotests"
77
78 RUN echo "cat /opt/topotests/motd.txt" >> /root/.profile && \
79 echo "export PS1='(topotests) $PS1'" >> /root/.profile
80
81 ENTRYPOINT [ "bash", "/opt/topotests/entrypoint.sh" ]