A personal Docker registry based on GitHub Packages.
cgerling / dockeryard Goto Github PK
View Code? Open in Web Editor NEWA personal Docker registry based on GitHub Packages
License: GNU General Public License v3.0
A personal Docker registry based on GitHub Packages
License: GNU General Public License v3.0
We could reuse more logic if we moved some stuff out of this repository, leaving just Docker-related files.
This is already supported by Docker by creating multiple tags for each arch.
I prefer to wait for the buildx
command to become stable and then add this feature here.
Show somehow the individual build status of each image
Nowadays there's a single workflow to handle all custom images, because of that every update on any image triggers a "publish"* for all images present on the repository. This is not sensitive since the only thing affected is the delay between the update itself and the image is available to use, a cache could be configured to fasten the process a bit but it still does unnecessary work.
One possible solution is to create a workflow configuration for each image that triggers only when there's some update on their files together with a custom action that actually publishes* an image to a registry, to reduce the boilerplate necessary to add one.
An ideal solution would be a generic action that dynamically checks which image was updated and publishes it but I don't know how pratic this would be since GitHub Actions doesn't seem to support a lot of dynamic behavior, for obvious reasons.
*with publish I refer to the build and push process
In the current state, we have a meta.sh
script file to provide metadata about the image but the truth is that we just need a tag name for the image, so it would be better to rely on a more flexible system and reintroduce the meta.sh
file concept later when actually needed.
Since the ground was laid on #1 we can focus on minor improvements to achieve a more seamless workflow. Nowadays only changes on the master that affect some image related file (workflow configuration or something inside images/{image}
) triggers a workflow that will release a new version on the registry, but this behavior isn't always intended because we need to check if the image changes will work (in this case just build successfully) without releasing this new version to the registry before merging a PR, to avoid pushing unapproved things to the registry.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.