https://github.com/osbuild/containers
Containers used within the osbuild project
https://github.com/osbuild/containers
Last synced: over 1 year ago
JSON representation
Containers used within the osbuild project
- Host: GitHub
- URL: https://github.com/osbuild/containers
- Owner: osbuild
- License: apache-2.0
- Created: 2020-02-28T17:20:17.000Z (over 6 years ago)
- Default Branch: main
- Last Pushed: 2025-02-25T07:42:18.000Z (over 1 year ago)
- Last Synced: 2025-03-29T16:18:13.109Z (over 1 year ago)
- Language: Dockerfile
- Size: 224 KB
- Stars: 7
- Watchers: 2
- Forks: 14
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
OSBuild Containers
==================
Containers for the OSBuild Project
This repository contains sources for containers used by the OSBuild project and
its associated infrastructure. Furthermore, it contains auxiliary resources
used with these containers.
### Project
* **Website**:
* **Bug Tracker**:
### Requirements
The requirements for this project are:
* `docker >= 19.03`
### Build
This project contains makefile with predefined targets which allows
easy building of defined images.
If not specified, the default `IMG_TARGET` is set to `osbuild-ci-latest`
Example usage:
```sh
# Prepare host environment
make setup-builder
# Show abailable targets
make list-targets
# Show details of particular target
make inspect-target IMG_TARGET=osbuild-ci-latest
# Build selected target
make bake IMG_TARGET=osbuild-ci-latest
```
### Manual build
Container images in `./src/images/` are built via Docker BuildKit. The build
instructions are available in `./docker-bake.hcl`, and can be executed via
`docker buildx bake`. To build **all** targets, use:
```sh
docker buildx bake all-images
```
Replace `all-images` with a specific target or group if you only want to
build a subset of all images. The `--print` argument is useful to print the
build-configuration instead of actually building anything:
```sh
docker buildx bake --print all-images
```
The CI system will build and verify all images on every PR. However, it will
not store the images by default. Only if you trigger an explicit deployment
the images will be stored in a registry. To trigger a deployment, go to the
`CI for Image Builds` workflow on GitHub:
Then click `Run Workflow`, specify the target (or `all-images`) and submit
it. This will build all images and push them out with a new unique tag. The
images are stored on the GitHub Container Registry and mirrored on Quay. To
make use of those images, go to `ghcr.io/osbuild/` and checkout the
new tag. Alternatively, you can resolve the digest of the `-latest` tags to
get the digest of the latest build.
Apart from the individual build targets, there are target groups for easier
selection of a subset of images. Those target groups always start with
`all-*` and build a set of images. The `all-images` target group, for instance,
builds all available images. However, check out `./docker-bake.hcl` for other
target groups. Usually, there will be a `all-` target group corresponding
to `./src/images/.Dockerfile`, which will build all supported
configurations of a specific image.
### Repository:
- **web**:
- **https**: `https://github.com/osbuild/containers.git`
- **ssh**: `git@github.com:osbuild/containers.git`
### License:
- **Apache-2.0**
- See LICENSE file for details.