1*858ea5e5SAndroid Build Coastguard Worker# With this Dockerfile, you can create a container image: 2*858ea5e5SAndroid Build Coastguard Worker# $ docker build -f Dockerfile -t bpftool . 3*858ea5e5SAndroid Build Coastguard Worker# And then use it: 4*858ea5e5SAndroid Build Coastguard Worker# $ docker run --rm -ti --privileged --pid=host bpftool prog 5*858ea5e5SAndroid Build Coastguard Worker 6*858ea5e5SAndroid Build Coastguard Worker# hadolint global ignore=DL3008 7*858ea5e5SAndroid Build Coastguard Worker 8*858ea5e5SAndroid Build Coastguard WorkerFROM ubuntu:22.04 as builder 9*858ea5e5SAndroid Build Coastguard Worker 10*858ea5e5SAndroid Build Coastguard WorkerRUN \ 11*858ea5e5SAndroid Build Coastguard Worker export DEBIAN_FRONTEND=noninteractive && \ 12*858ea5e5SAndroid Build Coastguard Worker apt-get update && \ 13*858ea5e5SAndroid Build Coastguard Worker apt-get -y install --no-install-recommends \ 14*858ea5e5SAndroid Build Coastguard Worker build-essential \ 15*858ea5e5SAndroid Build Coastguard Worker libelf-dev \ 16*858ea5e5SAndroid Build Coastguard Worker libz-dev \ 17*858ea5e5SAndroid Build Coastguard Worker libcap-dev \ 18*858ea5e5SAndroid Build Coastguard Worker clang llvm llvm-dev lld \ 19*858ea5e5SAndroid Build Coastguard Worker binutils-dev \ 20*858ea5e5SAndroid Build Coastguard Worker pkg-config && \ 21*858ea5e5SAndroid Build Coastguard Worker rm -rf /var/lib/apt/lists/* 22*858ea5e5SAndroid Build Coastguard Worker 23*858ea5e5SAndroid Build Coastguard WorkerCOPY . /src 24*858ea5e5SAndroid Build Coastguard WorkerRUN \ 25*858ea5e5SAndroid Build Coastguard Worker make -C /src/src clean && \ 26*858ea5e5SAndroid Build Coastguard Worker make -C /src/src -j "$(nproc)" 27*858ea5e5SAndroid Build Coastguard Worker 28*858ea5e5SAndroid Build Coastguard WorkerFROM ubuntu:22.04 29*858ea5e5SAndroid Build Coastguard WorkerRUN \ 30*858ea5e5SAndroid Build Coastguard Worker export DEBIAN_FRONTEND=noninteractive && \ 31*858ea5e5SAndroid Build Coastguard Worker apt-get update && \ 32*858ea5e5SAndroid Build Coastguard Worker apt-get -y install --no-install-recommends \ 33*858ea5e5SAndroid Build Coastguard Worker libelf1 \ 34*858ea5e5SAndroid Build Coastguard Worker llvm && \ 35*858ea5e5SAndroid Build Coastguard Worker rm -rf /var/lib/apt/lists/* 36*858ea5e5SAndroid Build Coastguard Worker 37*858ea5e5SAndroid Build Coastguard WorkerCOPY --from=builder /src/src/bpftool /bin/bpftool 38*858ea5e5SAndroid Build Coastguard Worker 39*858ea5e5SAndroid Build Coastguard WorkerENTRYPOINT ["/bin/bpftool"] 40