You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
`linuxkit/alpine` is the base image for almost all other packages built by linuxkit, including builders, tools and actual container images
4
+
that are used in various parts of linuxkit yaml files.
5
+
6
+
This provides a reliable, consistent and repetable build.
7
+
8
+
This directory contains the source of `linuxkit/alpine`.
9
+
10
+
## Building
11
+
12
+
To build, run:
13
+
14
+
```
15
+
make build
16
+
```
17
+
18
+
## Pushing
19
+
20
+
To push, run:
21
+
22
+
```
23
+
make push
24
+
```
25
+
26
+
For a proper release process, see [docs/releasing.md](../../docs/releasing.md).
27
+
28
+
## Updating Sources and Packages
29
+
30
+
The base build for `linuxkit/alpine` is [library/alpine](https://hub.docker.io/_/alpine). The specific version is set in two `FROM` lines in
31
+
the [Dockerfile](./Dockerfile) in this directory.
32
+
33
+
The packages installed come from several sources:
34
+
35
+
*[packages](./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](./packages) are installed on all architectures.
36
+
*`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](./packages.x86_64) contains packages to be installed only on `linuxkit/alpine` for `x84_64`.
37
+
*`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.
38
+
*`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`.
39
+
40
+
In addition, the [Dockerfile](./Dockerfile) may install certain packages directly from source, if they are not available in the `apk` repositories, or the versions are
41
+
insufficient.
42
+
43
+
The final versions of packages installed are available in `versions.<arch>`.
0 commit comments