mirror of
				https://github.com/linuxkit/linuxkit.git
				synced 2025-11-04 10:29:43 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			47 lines
		
	
	
		
			919 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			919 B
		
	
	
	
		
			Docker
		
	
	
	
	
	
# This Dockerfile extracts the source code and headers from a kernel package,
 | 
						|
# builds the perf utility, and places it into a scratch image
 | 
						|
ARG IMAGE
 | 
						|
FROM ${IMAGE} AS ksrc
 | 
						|
 | 
						|
FROM linuxkit/alpine:e2391e0b164c57db9f6c4ae110ee84f766edc430 AS build
 | 
						|
RUN apk add \
 | 
						|
    argp-standalone \
 | 
						|
    bash \
 | 
						|
    bc \
 | 
						|
    binutils-dev \
 | 
						|
    bison \
 | 
						|
    build-base \
 | 
						|
    diffutils \
 | 
						|
    flex \
 | 
						|
    gmp-dev \
 | 
						|
    installkernel \
 | 
						|
    kmod \
 | 
						|
    elfutils-dev \
 | 
						|
    findutils \
 | 
						|
    mpc1-dev \
 | 
						|
    mpfr-dev \
 | 
						|
    python3 \
 | 
						|
    sed \
 | 
						|
    tar \
 | 
						|
    xz \
 | 
						|
    xz-dev \
 | 
						|
    zlib-dev \
 | 
						|
    zlib-static
 | 
						|
 | 
						|
COPY --from=ksrc /linux.tar.xz /kernel-headers.tar /
 | 
						|
RUN tar xf linux.tar.xz && \
 | 
						|
    tar xf kernel-headers.tar
 | 
						|
 | 
						|
WORKDIR /linux
 | 
						|
 | 
						|
RUN mkdir -p /out && \
 | 
						|
    make -C tools/perf LDFLAGS=-static V=1 && \
 | 
						|
    strip tools/perf/perf && \
 | 
						|
    cp tools/perf/perf /out
 | 
						|
 | 
						|
FROM scratch
 | 
						|
ENTRYPOINT []
 | 
						|
CMD []
 | 
						|
WORKDIR /
 | 
						|
COPY --from=build /out/perf /usr/bin/perf
 |