-
Notifications
You must be signed in to change notification settings - Fork 296
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
[Containers] Support using nerdctl to connect to a containerd backend #6014
Comments
Now we have nerdctl as a Docker-compatible CLI for containerd, maybe we can reuse it instead of docker backend to manage container operations for VS Code Remote Containers extension? |
Removing Dockershim and Docker support from Kubernetes is scheduled for Kubernetes v1.24. |
We should make this more specific about Remote - Containers does not touch container engines or daemons directly but rather interacts with CLIs. It makes no assumptions about how the engine functions. There's no "containerd, CRI-O" CLI per-se. For example, Docker itself uses containerd on Linux, so really it's already supported. Dockershim going away will not have any affect. The issue is that each CLI that needs to be supported will require separate work unless it supports everything the docker CLI does with the same arguments. Podman is closest but there are always nuances. While the |
So maybe split the issue to 2 parts - nerdctl and crictl? |
We should track |
FYI - For those not aware, the dev container CLI is now open source and is what the extension uses to interoperate with container engines if anyone has interest in contributing. https://github.com/devcontainers/cli |
Any updates on this? |
@Chuxel I checked the devcontainers/cli repo and searched for Is the code for this extension not open? This repo is just for feedback, correct? |
Yeah, I'd recommend opening an issue in the CLI repository to discuss the specific scenario you are looking into. @chrmarti is the version check in the CLI or extension? Generally, seems like these kinds of checks should end up in the CLI (if not the broader spec) so they can be contributed, but I'm not sure if this is a proposed feature. |
The version check is in the extension. Making that more tolerant now. |
nerdctl and finch also don't support --sig-proxy=false (Offending Line in devcontainer code: https://github.com/devcontainers/cli/blob/f7d4c853bf8c284d784173f3e915a34d961b0b55/src/spec-node/singleContainer.ts#L396 ) |
I'm hesitant to make details like The more tolerant version check is available in Dev Containers extension 0.330.0-pre-release. |
Hi @chrmarti , In this case, for docker, you are tuning off the feature... and this feature doesn't even exists in nerdctl... you can safely be "non conditional" just detecting you are using nerdctl (which it already do) and not sending the argument. Could that be a solution? |
A --sig-proxy change was merged to nerdctl yesterday that should supports the flag in run |
Kubernetes deprecated Docker as a container runtime after v1.20 at the end of 2020 year with removing in v1.22 in late 2021.
So now there is more and more servers, that uses other container runtimes (containerd, CRI-O) instead of Docker.
But Visual Studio Code Remote - Containers extension doesn't see CRI containers, that using runtime other than Docker, because instead of list of containers I see the placeholder:
So, is it possible to add support for other container runtimes to
VS Code Remote Containers
extension?The text was updated successfully, but these errors were encountered: