3 # Setup the environment
4 ENV DEBIAN_FRONTEND=noninteractive
7 RUN apt-get update -qq \
8 && apt-get install -y \
11 && sed -i 's/# \(en_US\.UTF-8 .*\)/\1/' /etc/locale.gen \
12 && locale-gen en_US.UTF-8 \
13 && dpkg-reconfigure --frontend=noninteractive locales \
14 && update-locale LANG=en_US.UTF-8 \
15 && TZ=Etc/UTC && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \
16 && rm -r /var/lib/apt/lists/*
17 ENV LANG="en_US.UTF-8" LANGUAGE="en_US" LC_ALL="en_US.UTF-8"
19 # Install packages and Docker
20 RUN apt-get -q update \
21 && apt-get install -y -qq \
54 python3-cffi-backend \
65 software-properties-common \
78 && ln -s -f /usr/lib/x86_64-linux-gnu/libc.a /usr/lib/x86_64-linux-gnu/liblibc.a \
79 && curl -fsSL https://get.docker.com | sh \
80 && rm -rf /var/lib/apt/lists/*
83 RUN chown root:syslog /var/log \
84 && chmod 755 /etc/default
86 # Create directory structure
87 RUN mkdir -p /tmp/dumps \
88 && mkdir -p /var/cache/vpp/python \
89 && mkdir -p /var/run/sshd \
90 && mkdir -p /var/log/vpp
97 python-dateutil==2.8.2 \
100 robotframework==6.1.1 \
104 ansible-core==2.15.2 \
110 rfc3339-validator==0.1.4 \
116 charset-normalizer==3.2.0 \
117 cryptography==41.0.3 \
120 jsonschema-specifications==2023.7.1 \
125 referencing==0.30.0 \
132 RUN groupadd -g 1000 testuser \
133 && useradd -rm -d /home/testuser -s /bin/bash -g testuser -G sudo -u 1000 testuser \
134 && echo 'testuser:Csit1234' | chpasswd
136 RUN echo 'root:Csit1234' | chpasswd \
137 && sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config \
138 && echo "export VISIBLE=now" >> /etc/profile
140 RUN service ssh start