Code Monkey home page Code Monkey logo

containers's Introduction

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

Requirements

The requirements for this project are:

  • docker >= 19.03

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:

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:

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:

https://github.com/osbuild/containers/actions/workflows/ci-images.yml

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/<image> 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-<name> target group corresponding to ./src/images/<name>.Dockerfile, which will build all supported configurations of a specific image.

Repository:

License:

  • Apache-2.0
  • See LICENSE file for details.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.