blob: a8456a91e70b38a95c269f2fc86bc94a6c5b4ab1 [file] [log] [blame]
FROM ubuntu:18.04
ARG LLVM_VERSION="8"
ENV LLVM_VERSION=$LLVM_VERSION
RUN apt-get update && apt-get install -y curl gnupg &&\
llvmRepository="\n\
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic main\n\
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic main\n\
deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-${LLVM_VERSION} main\n\
deb-src http://apt.llvm.org/bionic/ llvm-toolchain-bionic-${LLVM_VERSION} main\n" &&\
echo $llvmRepository >> /etc/apt/sources.list && \
curl -L https://apt.llvm.org/llvm-snapshot.gpg.key | apt-key add -
RUN apt-get update && apt-get install -y \
util-linux \
bison \
binutils-dev \
cmake \
flex \
g++ \
git \
kmod \
wget \
libelf-dev \
zlib1g-dev \
libiberty-dev \
libbfd-dev \
libedit-dev \
clang-${LLVM_VERSION} \
libclang-${LLVM_VERSION}-dev \
libclang-common-${LLVM_VERSION}-dev \
libclang1-${LLVM_VERSION} \
llvm-${LLVM_VERSION} \
llvm-${LLVM_VERSION}-dev \
llvm-${LLVM_VERSION}-runtime \
libllvm${LLVM_VERSION} \
systemtap-sdt-dev \
sudo \
iproute2 \
python3 \
python3-pip \
python-pip \
ethtool \
arping \
netperf \
iperf \
iputils-ping \
bridge-utils \
libtinfo5 \
libtinfo-dev
RUN pip3 install pyroute2 netaddr dnslib cachetools
RUN pip install pyroute2 netaddr dnslib cachetools
# FIXME this is faster than building from source, but it seems there is a bug
# in probing libruby.so rather than ruby binary
#RUN apt-get update -qq && \
# apt-get install -y software-properties-common && \
# apt-add-repository ppa:brightbox/ruby-ng && \
# apt-get update -qq && apt-get install -y ruby2.6 ruby2.6-dev
RUN wget -O ruby-install-0.7.0.tar.gz \
https://github.com/postmodern/ruby-install/archive/v0.7.0.tar.gz && \
tar -xzvf ruby-install-0.7.0.tar.gz && \
cd ruby-install-0.7.0/ && \
make install
RUN ruby-install --system ruby 2.6.0 -- --enable-dtrace