| 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==0.5.18 netaddr==0.8.0 dnslib==0.9.14 cachetools==3.1.1 |
| |
| # 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 |