Questo contenuto non è disponibile nella lingua selezionata.

Chapter 7. Using imagestreams with Kubernetes resources


Imagestreams, being OpenShift Container Platform native resources, work out of the box with all the rest of native resources available in OpenShift Container Platform, such as builds or deployments. It is also possible to make them work with native Kubernetes resources, such as jobs, replication controllers, replica sets or Kubernetes deployments.

7.1. Enabling imagestreams with Kubernetes resources

When using imagestreams with Kubernetes resources, you can only reference imagestreams that reside in the same project as the resource. The imagestream reference must consist of a single segment value, for example ruby:2.5, where ruby is the name of an imagestream that has a tag named 2.5 and resides in the same project as the resource making the reference.

Note

This feature can not be used in the default namespace, nor in any openshift- or kube- namespace.

There are two ways to enable imagestreams with Kubernetes resources:

  • Enabling imagestream resolution on a specific resource. This allows only this resource to use the imagestream name in the image field.
  • Enabling imagestream resolution on an imagestream. This allows all resources pointing to this imagestream to use it in the image field.

Procedure

You can use oc set image-lookup to enable imagestream resolution on a specific resource or imagestream resolution on an imagestream.

  1. To allow all resources to reference the imagestream named mysql, enter the following command:

    $ oc set image-lookup mysql

    This sets the Imagestream.spec.lookupPolicy.local field to true.

    Imagestream with image lookup enabled

    apiVersion: v1
    kind: ImageStream
    metadata:
      annotations:
        openshift.io/display-name: mysql
      name: mysql
      namespace: myproject
    spec:
      lookupPolicy:
        local: true

    When enabled, the behavior is enabled for all tags within the imagestream.

  2. Then you can query the imagestreams and see if the option is set:

    $ oc set image-lookup imagestream --list

You can enable image lookup on a specific resource.

  • To allow the Kubernetes deployment named mysql to use imagestreams, run the following command:

    $ oc set image-lookup deploy/mysql

    This sets the alpha.image.policy.openshift.io/resolve-names annotation on the deployment.

    Deployment with image lookup enabled

    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: mysql
      namespace: myproject
    spec:
      replicas: 1
      template:
        metadata:
          annotations:
            alpha.image.policy.openshift.io/resolve-names: '*'
        spec:
          containers:
          - image: mysql:latest
            imagePullPolicy: Always
            name: mysql

You can disable image lookup.

  • To disable image lookup, pass --enabled=false:

    $ oc set image-lookup deploy/mysql --enabled=false
Red Hat logoGithubRedditYoutubeTwitter

Formazione

Prova, acquista e vendi

Community

Informazioni sulla documentazione di Red Hat

Aiutiamo gli utenti Red Hat a innovarsi e raggiungere i propri obiettivi con i nostri prodotti e servizi grazie a contenuti di cui possono fidarsi.

Rendiamo l’open source più inclusivo

Red Hat si impegna a sostituire il linguaggio problematico nel codice, nella documentazione e nelle proprietà web. Per maggiori dettagli, visita ilBlog di Red Hat.

Informazioni su Red Hat

Forniamo soluzioni consolidate che rendono più semplice per le aziende lavorare su piattaforme e ambienti diversi, dal datacenter centrale all'edge della rete.

© 2024 Red Hat, Inc.