#7  A built-in docker registry
Open
Robin Shen opened 3 years ago

Please take into consideration that there is a need for nested docker repos (one additional level is enough like GitLab has per project). The overall ECR/Azure/GitHub registry stuff is so crazily limited it’s borderline unusable: you have to pop up projects/registries just to have a different image name, and tags are limited to 128 chars, within [A-Za-z0-9-_] (so, no slash), so you need to spawn repos like crazy (which means different creds or setup or project settings) and/or suffer unreadable mangled tag names.

Michael Weimann commented 2 years ago

One thing I install parallel to every OneDev setup is a docker registry. So maybe this is a point.

Beside something written in Java could you think of bundling a registry executable with OneDev?
Like this: https://github.com/distribution/distribution

Robin Shen commented 2 years ago

I tend to implement a Java based docker registry if possible. Just shipping a registry executable with OneDev complicates bare-metal installation, and does not provide much value I think. In that case I'd like to leave it to users to install their own.

Robin Shen commented 2 years ago

Also I'd like to integrate OneDev with docker registry tightly to do things such as authenticating against same user base, associating docker image with build record, managing docker image from OneDev UI, etc.

I am not sure how difficult it will be to implement a docker registry in Java though...

Marcos de Oliveira commented 8 months ago

@robin Maybe you could take a look at https://github.com/sonatype/nexus-public which is Java also and EPL 1.0 Licensed. Maybe even some code might be reused, as EPL and MIT are compatible.

Robin Shen commented 8 months ago

Thanks for the info. Definitely will look into this when I start to implement this feature.

Stephen S commented 8 months ago

May I give my 2 cents?
I guess most of us users switched to OneDev because:
1. it is a gorgeous project
2. Robin is amazing
3. the installation process is easy and well documented
4. OneDev is (relatively) light

Adding features that are readily available elsewhere (in that case: docker registry v2) might not be the best idea: who among us has not struggled with a self-hosted GitLab?
Meaning: please keep OneDev mean and lean!

jewgeni commented 5 months ago

I would love to have that option or at least some documentation how to achieve this with Docker. I get some network issues when I deploy the registry in a separat container.

Maciej Grabowski commented 5 months ago

@stsinc I think you are missing the point here. All of what OneDev delivers is "readily available" in other, separate projects. Strength and value of OneDev comes from fact that it neatly integrates it under one tool, and need for container registry is so common requirement that it would be great thing to include it inside OneDev.

This and visual representation of pipelines as graphs are 2 main components missing in current releases.

Robin Shen commented 5 months ago

Visual pipeline already available in dev branch. It visualizes job dependencies both at define time, and at runtime. This feature will be released in OneDev 7.

Maciej Grabowski commented 5 months ago

That's excellent news:)

Shamil commented 2 weeks ago

@robin in light of Gitea having released a registry for various media, will this be coming soon? I’m trying to decide whether it’s worth standing something like Harbour up as I don’t want to stand up if this feature will come

Robin Shen commented 2 weeks ago

This may not come very soon, and I hope to get it into OneDev in year 2023. Right now I am working on custom dashboard which is early requested by my own company.

Shamil commented 2 weeks ago

Ok, no worries

Shamil commented 2 weeks ago

@robin is there an issue tracking the custom dashboard work? This sounds interesting

Robin Shen commented 2 weeks ago

Issue #377 covers this request. It basically provides dashboard so that different role in the team can start work more easily. For instance, customer can see projects with latest release and change log, while QA sees test builds with issues to be tested etc.

issue 1 of 1
Type
New Feature
Priority
Normal
Assignee
Issue Votes (4)
Reference
issue onedev/server#7
Please wait...
Page is in error, reload to recover