create repro for bug in runc

Signed-off-by: Jess Frazelle <acidburn@microsoft.com>
This commit is contained in:
Jess Frazelle 2018-03-14 14:06:56 -04:00
parent 621bb0ca70
commit 6ebc157029
No known key found for this signature in database
GPG Key ID: 18F3685C0022BFF3
3 changed files with 48 additions and 0 deletions

33
runc-rootless/Dockerfile Normal file
View File

@ -0,0 +1,33 @@
FROM golang:1.9-alpine AS runc
ARG RUNC_VERSION=9f9c96235cc97674e935002fc3d78361b696a69e
RUN apk add --no-cache \
bash \
curl \
g++ \
git \
libseccomp-dev \
linux-headers \
make
RUN git clone https://github.com/jessfraz/runc.git "$GOPATH/src/github.com/opencontainers/runc" \
&& cd "$GOPATH/src/github.com/opencontainers/runc" \
&& git checkout -q "demo-rootless" \
&& make static BUILDTAGS="seccomp" EXTRA_FLAGS="-buildmode pie" EXTRA_LDFLAGS="-extldflags \\\"-fno-PIC -static\\\"" \
&& mv runc /usr/bin/runc
FROM alpine
MAINTAINER Jessica Frazelle <jess@linux.com>
RUN apk add --no-cache \
bash \
shadow \
shadow-uidmap \
strace
COPY --from=runc /usr/bin/runc /usr/bin/runc
COPY start.sh /usr/bin/start.sh
ENV HOME /home/user
RUN useradd --create-home --home-dir $HOME user
COPY busybox.tar /home/user/busybox.tar
RUN chown -R user:user $HOME /run /tmp
USER user
WORKDIR $HOME
CMD ["start.sh"]

BIN
runc-rootless/busybox.tar Normal file

Binary file not shown.

15
runc-rootless/start.sh Executable file
View File

@ -0,0 +1,15 @@
#!/bin/bash
set -e
set -o pipefail
mkdir -p "${HOME}/rootfs"
mkdir -p "${HOME}/containerroot"
# untar the rootfs
tar -C "${HOME}/rootfs" -xf "${HOME}/busybox.tar"
# create the spec
runc spec --rootless
# run the container
runc --root "${HOME}/containerroot" run mycontainer