Skip to content

Commit 0b14cd1

Browse files
authored
Merge pull request #6677 from AkihiroSuda/dev
Dockerfile: update RootlessKit to v3.0.0
2 parents a8a4b0f + 28a12c5 commit 0b14cd1

5 files changed

Lines changed: 11 additions & 7 deletions

File tree

.github/workflows/.test.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ jobs:
120120
- containerd-snapshotter-stargz
121121
- oci
122122
- oci-rootless
123-
- oci-rootless-slirp4netns-detachnetns
123+
- oci-rootless-gvisor-tap-vsock-detachnetns
124124
- oci-snapshotter-stargz
125125
pkg: ${{ fromJson(needs.prepare.outputs.pkgs) }}
126126
kind: ${{ fromJson(needs.prepare.outputs.kinds) }}

Dockerfile

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ ARG CONTAINERD_VERSION=v2.2.3
66
ARG CONTAINERD_ALT_VERSION_21=v2.1.7
77
ARG CONTAINERD_ALT_VERSION_17=v1.7.31
88
ARG REGISTRY_VERSION=v2.8.3
9-
ARG ROOTLESSKIT_VERSION=v2.3.6
9+
ARG ROOTLESSKIT_VERSION=v3.0.0
1010
ARG CNI_VERSION=v1.9.1
1111
ARG STARGZ_SNAPSHOTTER_VERSION=v0.18.2
1212
ARG NERDCTL_VERSION=v2.2.1
@@ -433,7 +433,7 @@ COPY --link --from=binaries / /
433433

434434
FROM buildkit-base AS integration-tests-base
435435
ENV BUILDKIT_INTEGRATION_ROOTLESS_IDPAIR="1000:1000"
436-
RUN apk add --no-cache shadow shadow-uidmap sudo vim iptables ip6tables dnsmasq fuse curl git-daemon openssh-client openssl slirp4netns iproute2 gpg gpg-agent \
436+
RUN apk add --no-cache shadow shadow-uidmap sudo vim iptables ip6tables dnsmasq fuse curl git-daemon openssh-client openssl iproute2 gpg gpg-agent \
437437
&& useradd --create-home --home-dir /home/user --uid 1000 -s /bin/sh user \
438438
&& echo "XDG_RUNTIME_DIR=/run/user/1000; export XDG_RUNTIME_DIR" >> /home/user/.profile \
439439
&& mkdir -m 0700 -p /run/user/1000 \
@@ -459,6 +459,8 @@ RUN --mount=target=/tmp/gen_gpg_test_env.sh,source=hack/fixtures/gen_gpg_test_en
459459
RUN --mount=target=/tmp/gen_ssh_test_env.sh,source=hack/fixtures/gen_ssh_test_env.sh sh /tmp/gen_ssh_test_env.sh user1 && sh /tmp/gen_ssh_test_env.sh user2
460460
ENV CGO_ENABLED=0
461461
ENV GOTESTSUM_FORMAT=standard-verbose
462+
COPY --link --from=docker-engine / /usr/bin/
463+
RUN rm -f /usr/bin/vpnkit
462464
COPY --link --from=gotestsum /out /usr/bin/
463465
COPY --link --from=minio /usr/bin/minio /usr/bin/
464466
COPY --link --from=minio-mc /usr/bin/mc /usr/bin/
@@ -470,7 +472,6 @@ COPY --link --from=containerd-alt-17 /out/containerd* /opt/containerd-alt-17/bin
470472
COPY --link --from=registry /out /usr/bin/
471473
COPY --link --from=runc /usr/bin/runc /usr/bin/
472474
COPY --link --from=containerd /out/containerd* /usr/bin/
473-
COPY --link --from=docker-engine / /usr/bin/
474475
COPY --link --from=docker-cli / /usr/bin/
475476
COPY --link --from=docker-buildx /buildx /usr/libexec/docker/cli-plugins/docker-buildx
476477
COPY --link --from=cni-plugins /opt/cni/bin/bridge /opt/cni/bin/host-local /opt/cni/bin/loopback /opt/cni/bin/firewall /opt/cni/bin/dnsname /opt/cni/bin/

docs/rootless.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,10 @@ buildctl --addr unix:///run/user/$UID/buildkit/buildkitd.sock build ...
2323
> [!TIP]
2424
> To isolate BuildKit daemon's network namespace from the host (recommended):
2525
> ```bash
26-
> rootlesskit --net=slirp4netns --copy-up=/etc --disable-host-loopback buildkitd
26+
> rootlesskit --net=gvisor-tap-vsock --copy-up=/etc --disable-host-loopback buildkitd
2727
> ```
28+
>
29+
> If you use RootlessKit older than v3.0, change `gvisor-tap-vsock` to other network drivers such as `slirp4netns`.
2830
2931
## Running BuildKit in Rootless mode (containerd worker)
3032

examples/systemd/user/buildkit.service

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Documentation=https://github.com/moby/buildkit
55
[Service]
66
Type=notify
77
NotifyAccess=all
8+
# TODO: change the network driver from slirp4netns to gvisor-tap-vsock when rootlesskit v3.0 or later is widely used.
89
ExecStart=rootlesskit --net=slirp4netns --copy-up=/etc --disable-host-loopback /usr/local/bin/buildkitd --addr unix://%t/buildkit/rootless
910

1011
[Install]

util/testutil/workers/oci_unix.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,8 @@ func initOCIWorker() {
2121
}
2222
if integration.RootlessSupported(uid) {
2323
integration.Register(&OCI{ID: "oci-rootless", UID: uid, GID: gid})
24-
integration.Register(&OCI{ID: "oci-rootless-slirp4netns-detachnetns", UID: uid, GID: gid,
25-
RootlessKitNet: "slirp4netns", RootlessKitDetachNetNS: true})
24+
integration.Register(&OCI{ID: "oci-rootless-gvisor-tap-vsock-detachnetns", UID: uid, GID: gid,
25+
RootlessKitNet: "gvisor-tap-vsock", RootlessKitDetachNetNS: true})
2626
}
2727
}
2828

0 commit comments

Comments
 (0)