Использование сертификата CA для извлечения образа builder для сборки S2I

#openshift

#openshift

Вопрос:

У меня есть BuildConfig следующий strategy блок:

     strategy:
      sourceStrategy:
        from:
          kind: DockerImage
          name: <insecure registry pullspec>
        forcePull: true
        incremental: true
      type: Source
 

Образ builder поступает из реестра, который использует самозаверяющий сертификат. Как мне указать конфигурации сборки, чтобы она либо А) использовала сертификат CA для реестра, либо Б) игнорировала ошибки сертификата?

Я попытался добавить сертификат CA как непрозрачный секрет, а затем использовать pullSecret , но это не сработало:

   strategy:
    sourceStrategy:
      forcePull: true
      from:
        kind: DockerImage
        name: <insecure registry pullspec>
      incremental: true
      pullSecret:
        name: <name of opaque secret with ca cert>
    type: Source
 

Я запускаю эту сборку в кластере OpenShift 3.11.

Ответ №1:

На самом деле это описано в документации как добавить свой собственный корневой CA в качестве additionalTrustedCA : Настройка дополнительных доверенных центров сертификации для сборок

Вот соответствующие части:

Создайте ConfigMap в пространстве имен openshift-config, содержащем доверенные сертификаты для реестров, которые используют самозаверяющие сертификаты. Для каждого файла CA убедитесь, что ключ в ConfigMap является именем хоста реестра в формате hostname [..port]:

 $ oc create configmap registry-cas -n openshift-config 
   --from-file=myregistry.corp.com..5000=/etc/docker/certs.d/myregistry.corp.com:5000/ca.crt 
   --from-file=otherregistry.com=/etc/docker/certs.d/otherregistry.com/ca.crt
 

Обновите конфигурацию образа кластера:

 $ oc patch image.config.openshift.io/cluster --patch '{"spec":{"additionalTrustedCA":{"name":"registry-cas"}}}' --type=merge
 

Комментарии:

1. Я предполагаю oc patch , что команда также должна выполняться в openshift-config проекте, верно?

2. Кроме того, похоже openshift-config , что это недопустимое пространство имен : Error from server (NotFound): namespaces "openshift-config" not found . И это после входа в систему как system:admin .