diff --git a/Dockerfile b/Dockerfile index 15cc8e390e8..0c820e156c2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -28,8 +28,7 @@ ARG STARGZ_SNAPSHOTTER_VERSION=v0.18.1@BINARY # Extra deps: Encryption ARG IMGCRYPT_VERSION=v2.0.2@6892f4df2405cd15acbefd1dca970f53ba38bfda # Extra deps: Rootless -ARG ROOTLESSKIT_VERSION=v2.3.6@BINARY -ARG SLIRP4NETNS_VERSION=v1.3.3@BINARY +ARG ROOTLESSKIT_VERSION=v3.0.0@BINARY # Extra deps: bypass4netns ARG BYPASS4NETNS_VERSION=v0.4.2@aa04bd3dcc48c6dae6d7327ba219bda8fe2a4634 # Extra deps: FUSE-OverlayFS @@ -194,14 +193,6 @@ RUN git clone --quiet --depth 1 --branch "${IMGCRYPT_VERSION%%@*}" https://githu git-checkout-tag-with-hash.sh "${IMGCRYPT_VERSION}" && \ CGO_ENABLED=0 make && DESTDIR=/out make install && \ echo "- imgcrypt: ${IMGCRYPT_VERSION%%@*}" >> /out/share/doc/nerdctl-full/README.md -ARG SLIRP4NETNS_VERSION -RUN SLIRP4NETNS_VERSION=${SLIRP4NETNS_VERSION%%@*}; \ - fname="slirp4netns-$(cat /target_uname_m)" && \ - curl -o "${fname}" -fsSL --retry 5 --retry-delay 5 --retry-max-time 120 --connect-timeout 20 --proto '=https' --tlsv1.2 "https://github.com/rootless-containers/slirp4netns/releases/download/${SLIRP4NETNS_VERSION}/${fname}" && \ - grep "${fname}" "/SHA256SUMS.d/slirp4netns-${SLIRP4NETNS_VERSION}" | sha256sum -c && \ - mv "${fname}" /out/bin/slirp4netns && \ - chmod +x /out/bin/slirp4netns && \ - echo "- slirp4netns: ${SLIRP4NETNS_VERSION}" >> /out/share/doc/nerdctl-full/README.md ARG BYPASS4NETNS_VERSION COPY --from=build-bypass4netns /out/${TARGETARCH:-amd64}/* /out/bin/ RUN echo "- bypass4netns: ${BYPASS4NETNS_VERSION%%@*}" >> /out/share/doc/nerdctl-full/README.md @@ -256,7 +247,6 @@ RUN --mount=type=secret,id=github_token,env=GITHUB_TOKEN \ RUN echo "" >> /out/share/doc/nerdctl-full/README.md && \ echo "## License" >> /out/share/doc/nerdctl-full/README.md && \ - echo "- bin/slirp4netns: [GNU GENERAL PUBLIC LICENSE, Version 2](https://github.com/rootless-containers/slirp4netns/blob/${SLIRP4NETNS_VERSION%%@*}/COPYING)" >> /out/share/doc/nerdctl-full/README.md && \ echo "- bin/fuse-overlayfs: [GNU GENERAL PUBLIC LICENSE, Version 2](https://github.com/containers/fuse-overlayfs/blob/${FUSE_OVERLAYFS_VERSION%%@*}/COPYING)" >> /out/share/doc/nerdctl-full/README.md && \ echo "- bin/{runc,bypass4netns,bypass4netnsd}: Apache License 2.0, statically linked with libseccomp ([LGPL 2.1](https://github.com/seccomp/libseccomp/blob/main/LICENSE), source code available at https://github.com/seccomp/libseccomp/)" >> /out/share/doc/nerdctl-full/README.md && \ echo "- bin/tini: [MIT License](https://github.com/krallin/tini/blob/${TINI_VERSION%%@*}/LICENSE)" >> /out/share/doc/nerdctl-full/README.md && \ @@ -371,6 +361,8 @@ RUN apt-get update -qq && apt-get install -qq --no-install-recommends \ uidmap \ openssh-server \ openssh-client +# Install slirp4netns only if rootlesskit is prior to v3.0 +RUN if ! rootlesskit --help | grep -q gvisor-tap-vsock; then apt-get install -qq --no-install-recommends slirp4netns; fi # TODO: update containerized-systemd to enable sshd by default, or allow `systemctl wants ssh` here RUN ssh-keygen -q -t rsa -f /root/.ssh/id_rsa -N '' && \ useradd -m -s /bin/bash rootless && \ @@ -388,6 +380,8 @@ CMD ["/test-integration-rootless.sh", "./hack/test-integration.sh"] # test for CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=slirp4netns FROM test-integration-rootless AS test-integration-rootless-port-slirp4netns +RUN apt-get update -qq && apt-get install -qq --no-install-recommends \ + slirp4netns COPY ./Dockerfile.d/home_rootless_.config_systemd_user_containerd.service.d_port-slirp4netns.conf /home/rootless/.config/systemd/user/containerd.service.d/port-slirp4netns.conf RUN chown -R rootless:rootless /home/rootless/.config diff --git a/Dockerfile.d/SHA256SUMS.d/SHA256SUMS b/Dockerfile.d/SHA256SUMS.d/SHA256SUMS deleted file mode 100644 index f9bb64f0557..00000000000 --- a/Dockerfile.d/SHA256SUMS.d/SHA256SUMS +++ /dev/null @@ -1,6 +0,0 @@ -3edc52986c442576da856a66b59a61d16cf765359712c5ecf2d147c69f0df6e9 rootlesskit-aarch64.tar.gz -6ce9eed50f9e12f18f3e5197cf93d226bc9290185880a626ab186244593d2eed rootlesskit-armv7l.tar.gz -730ef884439e2fe15551218b05d5c4f96d96d6945db8ad7e89b1d12946408a8d rootlesskit-ppc64le.tar.gz -05da5803d0f023ec51112bbdf8967a3e12ae19544f8c101a7f08f3bb9c6548fd rootlesskit-riscv64.tar.gz -199f6bfcd0495d0b944d95f70e6fa1177ace16d801e2693fdd86fdaafa69b01a rootlesskit-s390x.tar.gz -afc52e9fa2f7a2d4bb692f675cf3d2f70f3a184f02593e8b18cfbbbc34cbfd41 rootlesskit-x86_64.tar.gz diff --git a/Dockerfile.d/SHA256SUMS.d/rootlesskit-v2.3.6 b/Dockerfile.d/SHA256SUMS.d/rootlesskit-v2.3.6 deleted file mode 100644 index f9bb64f0557..00000000000 --- a/Dockerfile.d/SHA256SUMS.d/rootlesskit-v2.3.6 +++ /dev/null @@ -1,6 +0,0 @@ -3edc52986c442576da856a66b59a61d16cf765359712c5ecf2d147c69f0df6e9 rootlesskit-aarch64.tar.gz -6ce9eed50f9e12f18f3e5197cf93d226bc9290185880a626ab186244593d2eed rootlesskit-armv7l.tar.gz -730ef884439e2fe15551218b05d5c4f96d96d6945db8ad7e89b1d12946408a8d rootlesskit-ppc64le.tar.gz -05da5803d0f023ec51112bbdf8967a3e12ae19544f8c101a7f08f3bb9c6548fd rootlesskit-riscv64.tar.gz -199f6bfcd0495d0b944d95f70e6fa1177ace16d801e2693fdd86fdaafa69b01a rootlesskit-s390x.tar.gz -afc52e9fa2f7a2d4bb692f675cf3d2f70f3a184f02593e8b18cfbbbc34cbfd41 rootlesskit-x86_64.tar.gz diff --git a/Dockerfile.d/SHA256SUMS.d/rootlesskit-v3.0.0 b/Dockerfile.d/SHA256SUMS.d/rootlesskit-v3.0.0 new file mode 100644 index 00000000000..c3a4d72a3db --- /dev/null +++ b/Dockerfile.d/SHA256SUMS.d/rootlesskit-v3.0.0 @@ -0,0 +1,6 @@ +9a6ca1f21c5a21be7738d5cd4cbd287b59fe0c76424750295e10405ca18f0ed5 rootlesskit-aarch64.tar.gz +925ff9f281f8658376ce0647e0e1703806fbc0c05d15a01408e080692583125b rootlesskit-armv7l.tar.gz +d4e8b82fdf104ab1e7bba3059d572b46323ff1da1adcd95cbf9f47a09ed3eb5d rootlesskit-ppc64le.tar.gz +5209498ab7c9446a0bcc8ad6b5e77796696da0dede815ef535017fb8412f99ba rootlesskit-riscv64.tar.gz +6ded9f92668c7838935a85fff51c664747f55343e279471d8871dfa793e7cbed rootlesskit-s390x.tar.gz +9e9e65f11b0a75ffe78f82284fa84528519b94c6c5032a33e6c80ec1924ef8d1 rootlesskit-x86_64.tar.gz diff --git a/Dockerfile.d/SHA256SUMS.d/slirp4netns-v1.3.3 b/Dockerfile.d/SHA256SUMS.d/slirp4netns-v1.3.3 deleted file mode 100644 index a40e6aee074..00000000000 --- a/Dockerfile.d/SHA256SUMS.d/slirp4netns-v1.3.3 +++ /dev/null @@ -1,7 +0,0 @@ -d0e6a13342efbedb8b7454629a0e9ce9b7a937c261034c85f46ed81af76307d8 SOURCE_DATE_EPOCH -1ca9d2f5f1fb4beb91f354653e5dad35b95c049afb264268d99a96ff2a10d903 slirp4netns-aarch64 -3e209d1c56fccbe627a038d311b233c15e8d914b30f9b981b5ed78b98e836859 slirp4netns-armv7l -4d1003a98103ee170c0fcd4aad8a5e0ba7aa2e70fbca883cbb6a39f40447c8da slirp4netns-ppc64le -06a13b398d88120097b20dace966d7dd5e2fbfd284b95a086347808df392200e slirp4netns-riscv64 -23d4a206edd6d3fc9c86f8b05c0881ff77a607b8d471f20964ad9f9c3f3176b1 slirp4netns-s390x -5618887b671a30a2f7548f2bdf7fba98a53981abc80cfd3183cd28b4dc8b2b97 slirp4netns-x86_64 diff --git a/README.md b/README.md index d01e10fc3b8..3b00cf2ec30 100644 --- a/README.md +++ b/README.md @@ -134,9 +134,8 @@ In addition to containerd, the following components should be installed: - v1.1.0 or later is highly recommended. - [BuildKit](https://github.com/moby/buildkit) (OPTIONAL): for using `nerdctl build`. BuildKit daemon (`buildkitd`) needs to be running. See also [the document about setting up BuildKit](./docs/build.md). - v0.11.0 or later is highly recommended. Some features, such as pruning caches with `nerdctl system prune`, do not work with older versions. -- [RootlessKit](https://github.com/rootless-containers/rootlesskit) and [slirp4netns](https://github.com/rootless-containers/slirp4netns) (OPTIONAL): for [Rootless mode](./docs/rootless.md) - - RootlessKit needs to be v0.10.0 or later. v2.0.0 or later is recommended. - - slirp4netns needs to be v0.4.0 or later. v1.1.7 or later is recommended. +- [RootlessKit](https://github.com/rootless-containers/rootlesskit) (OPTIONAL): for [Rootless mode](./docs/rootless.md) + - RootlessKit needs to be v0.10.0 or later. v3.0.0 or later is recommended. These dependencies are included in `nerdctl-full---.tar.gz`, but not included in `nerdctl---.tar.gz`. diff --git a/docs/faq.md b/docs/faq.md index eef678ca9d2..69595442e51 100644 --- a/docs/faq.md +++ b/docs/faq.md @@ -311,9 +311,9 @@ See also: - https://rootlesscontaine.rs/getting-started/containerd/ ### `nerdctl run -p ` does not propagate source IP -Expected behavior with the default `rootlesskit` port driver. +Make sure that nerdctl is running with RootlessKit v3.0 or later. -The solution is to change the port driver to `slirp4netns` (sacrifices performance). +For older version of RootlessKit, change the port driver to `slirp4netns` (sacrifices performance). See https://rootlesscontaine.rs/getting-started/containerd/#changing-the-port-forwarder . diff --git a/docs/rootless.md b/docs/rootless.md index 4b3f593f760..011fa3ff7b2 100644 --- a/docs/rootless.md +++ b/docs/rootless.md @@ -153,9 +153,9 @@ More detail is available at [https://github.com/rootless-containers/bypass4netns Rootless containerd recognizes the following environment variables to configure the behavior of [RootlessKit](https://github.com/rootless-containers/rootlesskit): * `CONTAINERD_ROOTLESS_ROOTLESSKIT_STATE_DIR=DIR`: the rootlesskit state dir. Defaults to `$XDG_RUNTIME_DIR/containerd-rootless`. -* `CONTAINERD_ROOTLESS_ROOTLESSKIT_NET=(slirp4netns|vpnkit|lxc-user-nic)`: the rootlesskit network driver. Defaults to "slirp4netns" if slirp4netns (>= v0.4.0) is installed. Otherwise defaults to "vpnkit". -* `CONTAINERD_ROOTLESS_ROOTLESSKIT_MTU=NUM`: the MTU value for the rootlesskit network driver. Defaults to 65520 for slirp4netns, 1500 for other drivers. -* `CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=(builtin|slirp4netns)`: the rootlesskit port driver. Defaults to "builtin" (this driver does not propagate the container's source IP address and always uses 127.0.0.1. Please check [Port Drivers](https://github.com/rootless-containers/rootlesskit/blob/master/docs/port.md#port-drivers) for more details). +* `CONTAINERD_ROOTLESS_ROOTLESSKIT_NET=(slirp4netns|vpnkit|pasta|gvisor-tap-vsock|lxc-user-nic)`: the rootlesskit network driver. Defaults to "slirp4netns" if slirp4netns (>= v0.4.0) is installed. Otherwise defaults to "gvisor-tap-vsock". +* `CONTAINERD_ROOTLESS_ROOTLESSKIT_MTU=NUM`: the MTU value for the rootlesskit network driver. Defaults to 65520 or 1500, depending on the network driver. +* `CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=(builtin|slirp4netns|implicit|gvisor-tap-vsock)`: the rootlesskit port driver. Defaults to "builtin". * `CONTAINERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SANDBOX=(auto|true|false)`: whether to protect slirp4netns with a dedicated mount namespace. Defaults to "auto". * `CONTAINERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SECCOMP=(auto|true|false)`: whether to protect slirp4netns with seccomp. Defaults to "auto". * `CONTAINERD_ROOTLESS_ROOTLESSKIT_DETACH_NETNS=(auto|true|false)`: whether to launch rootlesskit with the "detach-netns" mode. diff --git a/extras/rootless/containerd-rootless-setuptool.sh b/extras/rootless/containerd-rootless-setuptool.sh index c0f754e37b8..d4caaa941eb 100755 --- a/extras/rootless/containerd-rootless-setuptool.sh +++ b/extras/rootless/containerd-rootless-setuptool.sh @@ -104,7 +104,6 @@ cmd_entrypoint_check() { init INFO "Checking RootlessKit functionality" if ! rootlesskit \ - --net=slirp4netns \ --disable-host-loopback \ --copy-up=/etc --copy-up=/run --copy-up=/var/lib \ true; then diff --git a/extras/rootless/containerd-rootless.sh b/extras/rootless/containerd-rootless.sh index f569484a574..b992b5744be 100755 --- a/extras/rootless/containerd-rootless.sh +++ b/extras/rootless/containerd-rootless.sh @@ -28,14 +28,13 @@ # External dependencies: # * newuidmap and newgidmap needs to be installed. # * /etc/subuid and /etc/subgid needs to be configured for the current user. -# * RootlessKit (>= v0.10.0) needs to be installed. RootlessKit >= v2.0.0 is recommended. -# * Either one of slirp4netns (>= v0.4.0), VPNKit, lxc-user-nic needs to be installed. slirp4netns >= v1.1.7 is recommended. +# * RootlessKit (>= v0.10.0) needs to be installed. RootlessKit >= v3.0.0 is recommended. # # Recognized environment variables: # * CONTAINERD_ROOTLESS_ROOTLESSKIT_STATE_DIR=DIR: the rootlesskit state dir. Defaults to "$XDG_RUNTIME_DIR/containerd-rootless". -# * CONTAINERD_ROOTLESS_ROOTLESSKIT_NET=(slirp4netns|vpnkit|lxc-user-nic): the rootlesskit network driver. Defaults to "slirp4netns" if slirp4netns (>= v0.4.0) is installed. Otherwise defaults to "vpnkit". -# * CONTAINERD_ROOTLESS_ROOTLESSKIT_MTU=NUM: the MTU value for the rootlesskit network driver. Defaults to 65520 for slirp4netns, 1500 for other drivers. -# * CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=(builtin|slirp4netns): the rootlesskit port driver. Defaults to "builtin". +# * CONTAINERD_ROOTLESS_ROOTLESSKIT_NET=(slirp4netns|vpnkit|pasta|gvisor-tap-vsock|lxc-user-nic): the rootlesskit network driver. Defaults to "slirp4netns" if slirp4netns (>= v0.4.0) is installed. Otherwise defaults to "gvisor-tap-vsock". +# * CONTAINERD_ROOTLESS_ROOTLESSKIT_MTU=NUM: the MTU value for the rootlesskit network driver. Defaults to 65520 or 1500, depending on the network driver. +# * CONTAINERD_ROOTLESS_ROOTLESSKIT_PORT_DRIVER=(builtin|slirp4netns|implicit|gvisor-tap-vsock): the rootlesskit port driver. Defaults to "builtin". # * CONTAINERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SANDBOX=(auto|true|false): whether to protect slirp4netns with a dedicated mount namespace. Defaults to "auto". # * CONTAINERD_ROOTLESS_ROOTLESSKIT_SLIRP4NETNS_SECCOMP=(auto|true|false): whether to protect slirp4netns with seccomp. Defaults to "auto". # * CONTAINERD_ROOTLESS_ROOTLESSKIT_DETACH_NETNS=(auto|true|false): whether to launch rootlesskit with the "detach-netns" mode. @@ -90,15 +89,17 @@ if [ -z "$_CONTAINERD_ROOTLESS_CHILD" ]; then mtu=65520 fi else - echo "slirp4netns found but seems older than v0.4.0. Falling back to VPNKit." + echo "slirp4netns found but seems older than v0.4.0. Falling back to other drivers." fi fi if [ -z "$net" ]; then if command -v vpnkit >/dev/null 2>&1; then net=vpnkit else - echo "Either slirp4netns (>= v0.4.0) or vpnkit needs to be installed" - exit 1 + net=gvisor-tap-vsock + if [ -z "$mtu" ]; then + mtu=65520 + fi fi fi fi diff --git a/go.mod b/go.mod index 4d078b30f23..703287185cd 100644 --- a/go.mod +++ b/go.mod @@ -55,7 +55,7 @@ require ( github.com/opencontainers/runtime-spec v1.3.0 github.com/pelletier/go-toml/v2 v2.3.0 github.com/rootless-containers/bypass4netns v0.4.2 //gomodjail:unconfined - github.com/rootless-containers/rootlesskit/v2 v2.3.6 //gomodjail:unconfined + github.com/rootless-containers/rootlesskit/v3 v3.0.0 //gomodjail:unconfined github.com/spf13/cobra v1.10.2 //gomodjail:unconfined github.com/spf13/pflag v1.0.10 //gomodjail:unconfined github.com/vishvananda/netlink v1.3.1 //gomodjail:unconfined diff --git a/go.sum b/go.sum index 5d426e5a495..01a0d5afd57 100644 --- a/go.sum +++ b/go.sum @@ -275,8 +275,8 @@ github.com/rogpeppe/go-internal v1.14.1 h1:UQB4HGPB6osV0SQTLymcB4TgvyWu6ZyliaW0t github.com/rogpeppe/go-internal v1.14.1/go.mod h1:MaRKkUm5W0goXpeCfT7UZI6fk/L7L7so1lCWt35ZSgc= github.com/rootless-containers/bypass4netns v0.4.2 h1:JUZcpX7VLRfDkLxBPC6fyNalJGv9MjnjECOilZIvKRc= github.com/rootless-containers/bypass4netns v0.4.2/go.mod h1:iOY28IeFVqFHnK0qkBCQ3eKzKQgSW5DtlXFQJyJMAQk= -github.com/rootless-containers/rootlesskit/v2 v2.3.6 h1:m/26nAx0DbHZYaM46+uoQjfpu9G77QLzWj2jz25chO8= -github.com/rootless-containers/rootlesskit/v2 v2.3.6/go.mod h1:pv+RESmjRmeUIOsEWOT1f8560CrdaQrDW0YsF4K5kAY= +github.com/rootless-containers/rootlesskit/v3 v3.0.0 h1:esRHLVDYPWcqiPBTDR8gYeJB0kxVturOFYUP7kT2HgA= +github.com/rootless-containers/rootlesskit/v3 v3.0.0/go.mod h1:cAJ5ACtY9npaRpdeT6x1sJgt4gAbYB3/At7qX2LwpII= github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM= github.com/santhosh-tekuri/jsonschema/v6 v6.0.1 h1:PKK9DyHxif4LZo+uQSgXNqs0jj5+xZwwfKHgph2lxBw= github.com/santhosh-tekuri/jsonschema/v6 v6.0.1/go.mod h1:JXeL+ps8p7/KNMjDQk3TCwPpBy0wYklyWTfbkIzdIFU= diff --git a/hack/build-integration-canary.sh b/hack/build-integration-canary.sh index d94fdc91ea2..7f55cc6e868 100755 --- a/hack/build-integration-canary.sh +++ b/hack/build-integration-canary.sh @@ -46,7 +46,6 @@ dependencies=( containernetworking/plugins rootless-containers/rootlesskit opencontainers/runc - rootless-containers/slirp4netns awslabs/soci-snapshotter containerd/stargz-snapshotter krallin/tini @@ -65,7 +64,6 @@ FUSE_OVERLAYFS_CHECKSUM=linux # Avoids the full build BUILDG_CHECKSUM=buildg-v ROOTLESSKIT_CHECKSUM=linux -SLIRP4NETNS_CHECKSUM=linux STARGZ_SNAPSHOTTER_CHECKSUM=linux # We specifically want the static ones TINI_CHECKSUM=static diff --git a/pkg/bypass4netnsutil/bypass.go b/pkg/bypass4netnsutil/bypass.go index bc9eed11f9d..e3b51158b2f 100644 --- a/pkg/bypass4netnsutil/bypass.go +++ b/pkg/bypass4netnsutil/bypass.go @@ -25,7 +25,7 @@ import ( b4nnapi "github.com/rootless-containers/bypass4netns/pkg/api" "github.com/rootless-containers/bypass4netns/pkg/api/daemon/client" - rlkclient "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + rlkclient "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" "github.com/containerd/errdefs" "github.com/containerd/go-cni" diff --git a/pkg/ocihook/ocihook.go b/pkg/ocihook/ocihook.go index 910ff3aebd4..0522949cfea 100644 --- a/pkg/ocihook/ocihook.go +++ b/pkg/ocihook/ocihook.go @@ -33,7 +33,7 @@ import ( types100 "github.com/containernetworking/cni/pkg/types/100" "github.com/opencontainers/runtime-spec/specs-go" b4nndclient "github.com/rootless-containers/bypass4netns/pkg/api/daemon/client" - rlkclient "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + rlkclient "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" "github.com/containerd/go-cni" "github.com/containerd/log" diff --git a/pkg/ocihook/rootless_linux.go b/pkg/ocihook/rootless_linux.go index 5f908e62d15..47bb1a0ce0d 100644 --- a/pkg/ocihook/rootless_linux.go +++ b/pkg/ocihook/rootless_linux.go @@ -19,7 +19,7 @@ package ocihook import ( "context" - rlkclient "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + rlkclient "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" "github.com/containerd/go-cni" diff --git a/pkg/ocihook/rootless_other.go b/pkg/ocihook/rootless_other.go index ed1485a958a..96cce295df5 100644 --- a/pkg/ocihook/rootless_other.go +++ b/pkg/ocihook/rootless_other.go @@ -22,7 +22,7 @@ import ( "context" "fmt" - rlkclient "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + rlkclient "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" "github.com/containerd/go-cni" ) diff --git a/pkg/rootlessutil/port_linux.go b/pkg/rootlessutil/port_linux.go index dddf37a6f98..7d29fe55411 100644 --- a/pkg/rootlessutil/port_linux.go +++ b/pkg/rootlessutil/port_linux.go @@ -20,8 +20,8 @@ import ( "context" "net" - "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" - "github.com/rootless-containers/rootlesskit/v2/pkg/port" + "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" + "github.com/rootless-containers/rootlesskit/v3/pkg/port" "github.com/containerd/errdefs" "github.com/containerd/go-cni" diff --git a/pkg/rootlessutil/rootlessutil_linux.go b/pkg/rootlessutil/rootlessutil_linux.go index bb5349f255f..492160acdfa 100644 --- a/pkg/rootlessutil/rootlessutil_linux.go +++ b/pkg/rootlessutil/rootlessutil_linux.go @@ -24,7 +24,7 @@ import ( "strconv" "github.com/containernetworking/plugins/pkg/ns" - "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" ) func IsRootless() bool { diff --git a/pkg/rootlessutil/rootlessutil_other.go b/pkg/rootlessutil/rootlessutil_other.go index 4ebd5c1d832..d9723e624b4 100644 --- a/pkg/rootlessutil/rootlessutil_other.go +++ b/pkg/rootlessutil/rootlessutil_other.go @@ -25,7 +25,7 @@ package rootlessutil import ( "fmt" - "github.com/rootless-containers/rootlesskit/v2/pkg/api/client" + "github.com/rootless-containers/rootlesskit/v3/pkg/api/client" ) // Always returns false on non-Linux platforms.