Creating a new container image¶
If you would like to help create new container images, there's a few tools you will need:
Creating a new project¶
Create a new GitHub project using this template as reference.
The template includes are required workflows we use to build multi-arch containers. It also contains a sync workflow that will generate pull requests when the template
.github folder changes.
Adding your code¶
The project contains an example Golang program and a Makefile to test it. If your project uses Golang you can then start extending it. If you use a different programming languaje you will need to remove the go files and adjust the Makefile.
Building and testing¶
makewill build and test the code
make docker-buildwill build the container
Testing the CI pipeline in GitHub¶
After you upload your changes to GitHub the CI workflow action should be invoqued automatically. If it runs sucesfully your container should not be uploaded to GHCR. It will be private so you will need to ask a community mainteiner to make it public.
Check the following examples of code projects: