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

Distributing feature templates #71

Open
joshspicer opened this issue Aug 4, 2022 · 16 comments
Open

Distributing feature templates #71

joshspicer opened this issue Aug 4, 2022 · 16 comments
Labels
finalization Proposal to be made part of the spec

Comments

@joshspicer
Copy link
Member

breaking out the distribution of 'dev container templates' #7.

@joshspicer joshspicer added the proposal Still under discussion, collecting feedback label Aug 4, 2022
@Chuxel Chuxel added finalization Proposal to be made part of the spec and removed proposal Still under discussion, collecting feedback labels Oct 12, 2022
@Chuxel
Copy link
Member

Chuxel commented Oct 12, 2022

@Chuxel
Copy link
Member

Chuxel commented Jan 24, 2023

This has been implemented and integrated in the reference implmentation! Should we move the docs out of proposed at this point?

@aservedio
Copy link

Hello! I have a question that is similar to an already closed issue above that says this issue here resolves, but reading the proposals above and the entirety of containers.dev I am unable to find the answer.

If you create your own devcontainer template, is there any way for users or yourself to consume them beside adding them to this specific repo/file?

Maybe some VSCode setting where you can add the your own OCI collections created with the devcontainer cli tool?

Either way, unless I'm mistaken, none of that is documented anywhere. If that's intentional, it should be mentioned somewhere that you should not author a devcontainer template if you don't intend to add it to that collection yaml list above otherwise you will not be able to use them.

Thanks

@joshspicer
Copy link
Member Author

Hey @aservedio! That functionality is not clearly documented, but indeed built into the CLI as the templates apply command. We use the CLI in the extension to directly apply the template.

image

As an example applying the debian template

image

@robinWongM
Copy link

Hey @aservedio! That functionality is not clearly documented, but indeed built into the CLI as the templates apply command. We use the CLI in the extension to directly apply the template.

image

As an example applying the debian template

image

Will VS Code Dev Containers extension gain the same functionality?

@Chuxel
Copy link
Member

Chuxel commented Feb 3, 2023

@joshspicer @samruddhikhandale @bamurtaugh @chrmarti Sounds like the request here is more for a private index. We've had this request for Features as well, but there you can at least directly reference.

Do we have an issue tracking this already? If not, we should probably create one. Maybe in the CLI repo?

@chrmarti
Copy link
Contributor

chrmarti commented Feb 3, 2023

microsoft/vscode-remote-release#7960 ask for supporting a private index for features.

@aacebedo
Copy link

Seems private index is dead at the moment right? That's sad it would have been of great use.

@bamurtaugh
Copy link
Member

@aacebedo apologies for the confusion! microsoft/vscode-remote-release#7960 auto-closed, but we're still exploring the idea of a private index. Let's use this issue to track it on a spec-wide level.

@Md0135
Copy link

Md0135 commented Jan 10, 2024

Türkiye

@tclarke
Copy link

tclarke commented Jan 28, 2024

I'd also like to customize the wizard to use additional feature and template indicies. I've got a git repo setup with associated OCI images for my features and templates and I can use the devcontainer CLI to apply them. I'd like to either be able to have a vscode setting to set the indices to search in the wizard. An alternate/additional useful feature would be to just enter a template or feature OCI image name instead of having to choose just from the index.

@zisuu
Copy link

zisuu commented Jan 22, 2025

@aacebedo apologies for the confusion! microsoft/vscode-remote-release#7960 auto-closed, but we're still exploring the idea of a private index. Let's use this issue to track it on a spec-wide level.

Any news about this? Or is this still not planned to implement the template discovery for private/internal OCI registries?

@ParaFess
Copy link

ParaFess commented Jan 22, 2025 via email

@zisuu
Copy link

zisuu commented Jan 24, 2025

whats this abt

On Thu, Jan 23, 2025, 3:17 AM Zisuu @.***> wrote:
@aacebedo https://github.com/aacebedo apologies for the confusion!
microsoft/vscode-remote-release#7960
<microsoft/vscode-remote-release#7960>
auto-closed, but we're still exploring the idea of a private index. Let's
use this issue to track it on a spec-wide level.

Any news abou this? Or is this still not planned to implement the template
discovery for private/internal OCI registries?


Reply to this email directly, view it on GitHub
<#71 (comment)>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/BNEJ7NJLBXY7YCPTS4V5QWD2MAGWDAVCNFSM6AAAAABVV5OOQ6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMBYGMZTKNJRGQ
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>

This is about the fact and problem that self-made Dev Container Templates currently can only be discovered if they are pushed to a publicly available OCI registry and then also added to this public index https://github.com/devcontainers/devcontainers.github.io/blob/gh-pages/_data/collection-index.yml which then populates all templates here: https://containers.dev/templates

But how should a company distribute its own dev container templates (which only contain internal self-made dev container features)? Probably, it does not make sense to add a dev container template to the public index with an internal URL?

Sure, the company could just use the devcontainer cli to apply the templates, BUT this is very inconvenient. The way VSCode applies the templates with the interactive UI prompts is what makes using templates interesting and brings all the value to it. I wish we could just tell VSCode to look at a custom URL where we host our own templates index file to distribute our own, internal-only dev container templates.

Btw you might ask, "Why do they build their own templates and features?!" Well the main reason is that this is the only way we can use them because we work in an organisation where you need to 1) use the internal corporate proxy with internal corporate certificates and 2) use the internal corporate Artifactory (JFrog) mirrors to download binaries, as downloading binaries from public internet directly is not possible/allowed. So we had to re-write all dev container features and inject our own certificates and Artifactory mirrors in order to use dev containers. But as it seems we are now stuck with distributing our dev container templates, because VSCode only looks at the public index of templates. 👎

I hope this gives enough context about the problem and makes clear what all the discussions were about? Let me know if things are still unclear?

@chrmarti
Copy link
Contributor

FYI: When VS Code asks you to pick a template from the list, you can also enter an id like ghcr.io/devcontainers/templates/alpine:3.2.2 and it will offer to use that directly, also when that is not in the public index:

Image

@zisuu
Copy link

zisuu commented Jan 24, 2025

@chrmarti awesome I was not aware of that. The problem was solved for me then. 👏🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
finalization Proposal to be made part of the spec
Projects
None yet
Development

No branches or pull requests

13 participants