gvisor.dev/gvisor@v0.0.0-20240520182842-f9d4d51c7e0f/images/benchmarks/wrk2/Dockerfile (about)

     1  FROM ubuntu:20.04 as build
     2  
     3  # Install build dependencies:
     4  RUN apt-get update && apt-get install -y git build-essential libssl-dev libz-dev
     5  
     6  # Clone repo at the commit ID we expect to patch:
     7  RUN git clone https://github.com/giltene/wrk2.git /tmp/wrk2 \
     8   && cd /tmp/wrk2 \
     9   && git reset --hard 44a94c17d8e6a0bac8559b53da76848e430cb7a7
    10  
    11  # Update LuaJIT to an ARM-compatible version:
    12  RUN git clone https://luajit.org/git/luajit.git /tmp/luajit \
    13   && cd /tmp/luajit \
    14   && git reset --hard 224129a8e64bfa219d35cd03055bf03952f167f6 \
    15   && cp -ar /tmp/luajit/* /tmp/wrk2/deps/luajit/
    16  
    17  # Patch files to make them ARM-compatible:
    18  RUN cd /tmp/wrk2 \
    19   && sed -ri 's/#include <x86intrin.h>//g' src/hdr_histogram.c \
    20   && sed -ri 's/\bluaL_reg\b/luaL_Reg/g'   src/script.c
    21  
    22  # Make.
    23  RUN cd /tmp/wrk2 && make
    24  
    25  FROM ubuntu:20.04
    26  RUN set -x \
    27          && apt-get update \
    28          && apt-get install -y \
    29             wget \
    30          && rm -rf /var/lib/apt/lists/*
    31  COPY --from=build /tmp/wrk2/wrk /bin/wrk2