linuxkit/tools/alpine
Avi Deitcher 0b39a484b1 containerd-dev separate
Signed-off-by: Avi Deitcher <avi@deitcher.net>
2022-03-21 01:20:45 +02:00
..
Dockerfile containerd-dev separate 2022-03-21 01:20:45 +02:00
go-compile.sh Update Alpine base to 3.13; go-compile rebuilt with mod=vendor option, go bumped to 1.16 2021-04-27 17:38:22 +03:00
iucode-tool.patch tools/alpine: Add iucode_tool to base 2018-01-14 12:42:57 +00:00
Makefile calculate manifest hash-tag using git ls-tree 2021-05-21 01:31:14 +03:00
packages bump alpine to 3.14, remove go version hack 2021-11-07 13:43:45 +02:00
packages.aarch64 tools/alpine: Move strace to x86 and arm64 only 2019-03-02 17:57:02 +00:00
packages.s390x Add s390x support for linuxkit docker images 2018-02-27 15:16:58 +00:00
packages.x86_64 bump alpine to 3.14, remove go version hack 2021-11-07 13:43:45 +02:00
push-manifest.sh alpine: Fix push-manifest.sh 2021-10-16 16:57:15 +01:00
README.md Update Alpine base to 3.13; go-compile rebuilt with mod=vendor option, go bumped to 1.16 2021-04-27 17:38:22 +03:00
versions.aarch64 containerd-dev separate 2022-03-21 01:20:45 +02:00
versions.s390x containerd-dev separate 2022-03-21 01:20:45 +02:00
versions.x86_64 containerd-dev separate 2022-03-21 01:20:45 +02:00

LinuxKit Alpine

linuxkit/alpine is the base image for almost all other packages built by linuxkit, including builders, tools and actual container images that are used in various parts of linuxkit yaml files.

This provides a reliable, consistent and repetable build.

This directory contains the source of linuxkit/alpine.

Building

To build, run:

make build

Pushing

To push, run:

make push

For a proper release process, see docs/releasing.md.

Updating Sources and Packages

The base build for linuxkit/alpine is library/alpine. The specific version is set in two FROM lines in the Dockerfile in this directory.

The packages installed come from several sources:

  • packages - this file contains the list of packages to mirror locally in linuxkit/alpine, and will be available to all downstream users of linuxkit/alpine. These are installed using the default apk package version for the specific version of alpine. For example, if the line starts with FROM alpine:3.13 and packages contains file, then it will run simply apk add file. The packages listed in packages are installed on all architectures.
  • packages.<arch> - these files contain the list of packages to mirror locally in linuxkit/alpine, like packages, but only for the specified architecture. For example, packages.x86_64 contains packages to be installed only on linuxkit/alpine for x84_64.
  • packages.repo.<name> - these files contain the list of packages to mirror locally in linuxkit/alpine, like packages, but to pull those packages from the provided <name> of Alpine's apk repo. For example, packages.repo.edge installs packages from Alpine's edge package repository.
  • packages.<arch>.repo.<name> - these files contain the list of packages to mirror locally in linuxkit/alpine for a specific architecture, like packages.<arch>, but to pull those packages from the provided <name> of Alpine's apk repor. For example, packages.x86_64.repo.edge installs packages from Alpine's edge package repository, hut only when building for 86_64.

In addition, the Dockerfile may install certain packages directly from source, if they are not available in the apk repositories, or the versions are insufficient.

The final versions of packages installed are available in versions.<arch>.