Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ To serve the image cache over HTTPS:
First, build a list of images and create the cache. This example builds a minimal Talos image cache. To learn how to create an image cache, see the [Image cache documentation](./image-cache)

```bash
talosctl images default | \
talosctl images k8s-bundle | \
talosctl images cache-create \
--images=- \
--image-cache-path=/tmp/cache \
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,13 +13,26 @@ The cache is local to each machine and is automatically managed by Talos when en
## Preparing Image Cache

First, build a list of image references that need to be cached.
The `talosctl images default` might be used as a starting point, but it should be customized to include additional images (e.g. custom CNI, workload images, etc.)
The `talosctl images k8s-bundle` might be used as a starting point, but it should be customized to include additional images (e.g. custom CNI, workload images, etc.)

```bash
talosctl images default > images.txt
talosctl images k8s-bundle > images.txt
cat extra-images.txt >> images.txt
```

### Air-Gapped Environments
If you are preparing for an air-gapped environment, you will need to cache the talos images as well.

Starting with Talos 1.12 you can get a list of images needed from talosctl.

<CodeBlock lang="sh">
{`
talosctl images talos-bundle ${release_v1_12} >> images.txt
`}
</CodeBlock>

or deploy an [Image Factory](../../../../omni/infrastructure-and-extensions/self-hosted/deploy-image-factory-on-prem) to host Talos images internally.
<Warn>Including all talos-bundle images will significantly increase the size of your installation media. The minimum images to install Talos include the `installer` and `installer-base` images.</Warn>
Next, prepare an OCI image which contains all cached images:

```bash
Expand Down
42 changes: 36 additions & 6 deletions public/talos/v1.12/reference/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1799,7 +1799,7 @@ talosctl image cache-create [flags]
talosctl images cache-create --images=ghcr.io/siderolabs/kubelet:v1.33.0 --image-cache-path=/tmp/talos-image-cache

Alternatively, stdin can be piped to the command:
talosctl images default | talosctl images cache-create --image-cache-path=/tmp/talos-image-cache --images=-
talosctl images k8s-bundle | talosctl images cache-create --image-cache-path=/tmp/talos-image-cache --images=-

```

Expand Down Expand Up @@ -1830,18 +1830,18 @@ talosctl images default | talosctl images cache-create --image-cache-path=/tmp/t

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image default
## talosctl image k8s-bundle

List the default images used by Talos
List the Kubernetes images used by Talos

```
talosctl image default [flags]
talosctl image k8s-bundle [flags]
```

### Options

```
-h, --help help for default
-h, --help help for k8s-bundle
```

### Options inherited from parent commands
Expand Down Expand Up @@ -1917,6 +1917,35 @@ talosctl image pull <image> [flags]

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image talos-bundle

List the default images used by Talos

```
talosctl image talos-bundle [flags]
```

### Options

```
-h, --help help for talos-bundle
```

### Options inherited from parent commands

```
--cluster string Cluster to connect to if a proxy endpoint is used.
--context string Context to be used in command
-e, --endpoints strings override default endpoints in Talos configuration
--namespace system namespace to use: system (etcd and kubelet images) or `cri` for all Kubernetes workloads (default "cri")
-n, --nodes strings target the specified nodes
--talosconfig string The path to the Talos configuration file. Defaults to 'TALOSCONFIG' env variable if set, otherwise '$HOME/.talos/config' and '/var/run/secrets/talos.dev/config' in order.
```

### SEE ALSO

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image

Manage CRI container images
Expand All @@ -1942,9 +1971,10 @@ Manage CRI container images

* [talosctl](#talosctl) - A CLI for out-of-band management of Kubernetes nodes created by Talos
* [talosctl image cache-create](#talosctl-image-cache-create) - Create a cache of images in OCI format into a directory
* [talosctl image default](#talosctl-image-default) - List the default images used by Talos
* [talosctl image k8s-bundle](#talosctl-image-k8s-bundle) - List the Kubernetes images used by Talos
* [talosctl image list](#talosctl-image-list) - List CRI images
* [talosctl image pull](#talosctl-image-pull) - Pull an image into CRI
* [talosctl image talos-bundle](#talosctl-image-talos-bundle) - List the default images used by Talos

## talosctl inject serviceaccount

Expand Down
44 changes: 38 additions & 6 deletions public/talos/v1.12/reference/configuration/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -1914,7 +1914,7 @@ talosctl image cache-create [flags]
talosctl images cache-create --images=ghcr.io/siderolabs/kubelet:v1.35.0-alpha.3 --image-cache-path=/tmp/talos-image-cache

Alternatively, stdin can be piped to the command:
talosctl images default | talosctl images cache-create --image-cache-path=/tmp/talos-image-cache --images=-
talosctl images k8s-bundle | talosctl images cache-create --image-cache-path=/tmp/talos-image-cache --images=-

```

Expand Down Expand Up @@ -1986,18 +1986,18 @@ talosctl image cache-serve [flags]

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image default
## talosctl image k8s-bundle

List the default images used by Talos
List the Kubernetes images used by Talos

```
talosctl image default [flags]
talosctl image k8s-bundle [flags]
```

### Options

```
-h, --help help for default
-h, --help help for k8s-bundle
--provisioner string include provisioner specific images (default "installer")
```

Expand Down Expand Up @@ -2107,6 +2107,37 @@ talosctl image source-bundle {"<"}talos-version{">"} [flags]

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image talos-bundle

List the default images used by Talos

```
talosctl image talos-bundle [flags]
```

### Options

```
-h, --help help for talos-bundle
--provisioner string include provisioner specific images (default "installer")
```

### Options inherited from parent commands

```
-c, --cluster string Cluster to connect to if a proxy endpoint is used.
--context string Context to be used in command
-e, --endpoints strings override default endpoints in Talos configuration
--namespace system namespace to use: system (etcd and kubelet images) or `cri` for all Kubernetes workloads (default "cri")
-n, --nodes strings target the specified nodes
--siderov1-keys-dir string The path to the SideroV1 auth PGP keys directory. Defaults to 'SIDEROV1_KEYS_DIR' env variable if set, otherwise '$HOME/.talos/keys'. Only valid for Contexts that use SideroV1 auth.
--talosconfig string The path to the Talos configuration file. Defaults to 'TALOSCONFIG' env variable if set, otherwise '$HOME/.talos/config' and '/var/run/secrets/talos.dev/config' in order.
```

### SEE ALSO

* [talosctl image](#talosctl-image) - Manage CRI container images

## talosctl image

Manage CRI container images
Expand All @@ -2130,10 +2161,11 @@ Manage CRI container images
* [talosctl image cache-cert-gen](#talosctl-image-cache-cert-gen) - Generate TLS certificates and CA patch required for securing image cache to Talos communication
* [talosctl image cache-create](#talosctl-image-cache-create) - Create a cache of images in OCI format into a directory
* [talosctl image cache-serve](#talosctl-image-cache-serve) - Serve an OCI image cache directory over HTTP(S) as a container registry
* [talosctl image default](#talosctl-image-default) - List the default images used by Talos
* [talosctl image k8s-bundle](#talosctl-image-k8s-bundle) - List the Kubernetes images used by Talos
* [talosctl image list](#talosctl-image-list) - List CRI images
* [talosctl image pull](#talosctl-image-pull) - Pull an image into CRI
* [talosctl image source-bundle](#talosctl-image-source-bundle) - List the source images used for building Talos
* [talosctl image talos-bundle](#talosctl-image-talos-bundle) - List the default images used by Talos

## talosctl inject serviceaccount

Expand Down
Loading