Skip to content
Snippets Groups Projects
focal.docker 2.07 KiB
Newer Older
FROM ubuntu:focal
ENV http_proxy http://xfelproxy.desy.de:3128
ENV https_proxy http://xfelproxy.desy.de:3128
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update && \
    apt-get install -y software-properties-common apt-utils && \
    add-apt-repository -y universe && \
    add-apt-repository -y ppa:git-core/ppa && \
    apt-get update && \
    apt-get upgrade -y && \
    apt-get dist-upgrade -y && \
    apt-get install -y sudo wget python3-pip locales \ 
        g++ valgrind cppcheck lcov doxygen procmail make git gdb cmake ninja-build \
        libboost-all-dev libxml++2.6-dev \
        libldap2-dev libzmq3-dev rpcbind \
        libreadline-dev \
        qtbase5-dev \
        python2.7-dev python-numpy python3-dev python3-numpy \
        python-pytest \
        libxmu6 csh libxrandr2 \
        libncurses5-dev \
        linux-headers-generic \
        graphviz \
        clang \
        libhdf5-dev \
        liblua5.3-dev \
        python3-sphinx \
        libgsl-dev \
        libssl-dev \
        libpqxx-dev \
        libfftw3-dev \
        subversion \
        vim-common \
        netcat-openbsd \
        libarmadillo-dev \
        libjsoncpp-dev \
        python3-pytest \
        libxerces-c-dev && \
    useradd -u 30996 msk_jenkins && \
    ln -sfn /usr/lib/x86_64-linux-gnu/libzmq.so.5 /usr/lib/x86_64-linux-gnu/libzmq.so.3 && \
    pip3 install meson

RUN echo "Defaults set_home" >> /etc/sudoers && \
    echo 'Acquire::http::proxy "http://xfelproxy.desy.de:3128/";' > /etc/apt/apt.conf && \
    echo 'http_proxy=http://xfelproxy.desy.de:3128' >> /etc/environment && \
    echo 'https_proxy=https://xfelproxy.desy.de:3128' >> /etc/environment && \
    git config --system http.proxy http://xfelproxy.desy.de:3128 && \
    git config --system https.proxy http://xfelproxy.desy.de:3128
   
# NOTE: This last line (symlink for libzmq.so.3) is a hack for a bug in DOOCS serverlib, which has the version number hardcoded.
   
ADD lcov-to-cobertura-xml /common/lcov_cobertura-1.6

# Start rpcbind at launch of the container, required for DOOCS
ENTRYPOINT ["bash", "-c", "rpcbind -f -w ; bash"]