Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Docs: Add docs for nerdctl support #3532

Merged
merged 1 commit into from
Feb 29, 2024

Conversation

yankay
Copy link
Member

@yankay yankay commented Feb 27, 2024

After the #3429, the nerdctl is supported.

So add it to the docs.

@k8s-ci-robot k8s-ci-robot added the cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. label Feb 27, 2024
@k8s-ci-robot k8s-ci-robot added the size/S Denotes a PR that changes 10-29 lines, ignoring generated files. label Feb 27, 2024
Copy link
Member

@neolit123 neolit123 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 27, 2024
@nunix
Copy link

nunix commented Feb 27, 2024

hi everyone,

first of all, thanks a lot for this feature and the documentation of it 😄

I did a quick test on the Finch WSL2 distro, and here's the output:
image

In the docs, I don't think there's the mention of the environment variable KIND_EXPERIMENTAL_PROVIDER, however as you can see, depending on when the docs will come out, we might need to mention it.

If you think/know this won't be needed as there's possibly an internal check, then please disregard my comment.

Once again, thanks a lot for the great work.

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 28, 2024
@AkihiroSuda
Copy link
Member

https://kind.sigs.k8s.io/docs/user/rootless/ should be updated too

@AkihiroSuda
Copy link
Member

I also guess that KIND_EXPERIMENTAL_PROVIDER should be explained somewhere

@yankay
Copy link
Member Author

yankay commented Feb 28, 2024

https://kind.sigs.k8s.io/docs/user/rootless/ should be updated too

Thanks, it has been updated.

@@ -80,5 +81,12 @@ On some distributions, you might need to use systemd-run to start kind into its
$ systemd-run --scope --user kind create cluster
```

## Creating a kind cluster with Rootless Nerdctl

To create a kind cluster with Nerdctl Podman, just run:
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
To create a kind cluster with Nerdctl Podman, just run:
To create a kind cluster with nerdctl, just run:

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 28, 2024

## Provider requirements
- Docker: 20.10 or later
- Podman: 3.0 or later
- Nerdctl: 1.7 or later
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: maybe s/Nerdctl/nerdctl/g

Copy link
Member Author

@yankay yankay Feb 28, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@yankay
Copy link
Member Author

yankay commented Feb 28, 2024

hi everyone,

first of all, thanks a lot for this feature and the documentation of it 😄

I did a quick test on the Finch WSL2 distro, and here's the output: image

In the docs, I don't think there's the mention of the environment variable KIND_EXPERIMENTAL_PROVIDER, however as you can see, depending on when the docs will come out, we might need to mention it.

If you think/know this won't be needed as there's possibly an internal check, then please disregard my comment.

Once again, thanks a lot for the great work.

Thanks @nunix

Because I do have a finch WSL environment, I can only try to reproduce the issue in Ubuntu Linux.

root@kay201:~/oss/kind# docker version
-bash: /usr/local/bin/docker: No such file or directory
root@kay201:~/oss/kind# nerdctl version
Client:
 Version:       v1.7.2-102-gc18036e2.m
root@kay201:~/oss/kind# ./bin/kind --version
kind version 0.23.0-alpha.10+7c3e01fc1c25d8
root@kay201:~/oss/kind# ./bin/kind create cluster
Creating cluster "kind" ...
⠈⡱ Ensuring node image (kindest/node:v1.29.2) 🖼

It can work correctly without KIND_EXPERIMENTAL_PROVIDER , because the kind can auto-detect provider by https://github.com/kubernetes-sigs/kind/blob/main/pkg/cluster/provider.go#L114 .

Would you please help to provide the output with commands

nerdctl -v 
finch -v

to help me invesgate the issue :-)

@k8s-ci-robot k8s-ci-robot removed the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 28, 2024
@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed size/S Denotes a PR that changes 10-29 lines, ignoring generated files. labels Feb 28, 2024
Co-authored-by: Sean McGinnis <sean.mcginnis@gmail.com>
Signed-off-by: Kay Yan <kay.yan@daocloud.io>
@nunix
Copy link

nunix commented Feb 28, 2024

nerdctl -v

@yankay certainly, here's the output (screenshot just for proof):
nerdctl version 1.7.3 (from Rancher Desktop install)
finch version v1.1.2

image

On the KinD side, I generated the binary from WSL2 Finch distro with the command make install INSTALL_DIR=/usr/local/bin (inside the git KinD directory).
The KinD version is:
kind v0.23.0-alpha.10+7c3e01fc1c25d8 go1.20.13 linux/amd64

Finally, I also built kind.exe, with the command GOOS=windows go build from WSL2.
The version is:
kind v0.23.0-alpha go1.21.7 windows/amd64

Same as before with nerdctl, I had to set KIND_EXPERIMENTAL_PROVIDER, to finch this time, to be able to create the cluster (see screenshot below for the whole process).

image

hope this helps and please let me know if I need to run specific commands for building it on WSL2/Windows.

@@ -144,6 +144,9 @@ wait for 30 seconds, do `--wait 30s`, for 5 minutes do `--wait 5m`, etc.

More usage can be discovered with `kind create cluster --help`.

The kind can auto-detect the [docker], [podman], or [nerdctl] installed and choose the available one. If you want to turn off the auto-detect, use the environment variable `KIND_EXPERIMENTAL_PROVIDER=docker`, `KIND_EXPERIMENTAL_PROVIDER=podman` or `KIND_EXPERIMENTAL_PROVIDER=nerdctl` to
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@nunix is your concern addressed by this comment?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@aojea yes all good on my side for the comment.

I will try again the auto-detect when the 0.23 is out maybe, as what I was trying to test was actually the auto-detect. But it's maybe on my side and with the comment, it provides the needed help.

@aojea
Copy link
Contributor

aojea commented Feb 28, 2024

waiting for resolving the last comment

@aojea
Copy link
Contributor

aojea commented Feb 29, 2024

/lgtm
/approve
Thanks

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 29, 2024
@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: AkihiroSuda, aojea, yankay

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 29, 2024
@k8s-ci-robot k8s-ci-robot merged commit c3029ff into kubernetes-sigs:main Feb 29, 2024
29 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants