从Nexus不安全的私有注册表在OpenShift上运行Docker容器

问题描述

我正在尝试运行一个容器化应用,该应用存储在URL 12.23.34.55:8086托管的Nexus docker中 我正在尝试在我的Openshift群集上运行它,但出现错误。我正在运行的命令

oc create secret docker-registry mysecret --docker-server=http://12.23.34.55/ --docker-username=aditya --docker-password=aditya --docker-email=aditya@example.org


oc secrets link default mysecret  --for=pull

我的联系正在http://12.23.34.55:8081上运行

现在我正在使用命令使用以下命令在OpenShift中启动。

oc new-app 12.23.34.55:8085/mytestapp:11 --insecure-registry=true

按照$ oc新应用程序myregistry:5000 / example / myimage https://docs.openshift.com/container-platform/4.1/applications/application_life_cycle_management/creating-new-applications.html

但是它不起作用,它要求输入密码并且也无法从控制台进行部署,任何人都可以通过准确的命令来帮助我。

解决方法

创建秘密不足以使OpenShift能够从注册表中提取。您仍然还需要链接该秘密。

在这里查看官方文档: https://docs.openshift.com/container-platform/4.1/openshift_images/managing_images/using-image-pull-secrets.html#images-allow-pods-to-reference-images-from-secure-registries_using-image-pull-secrets

,

好吧!我找到了答案,所以首先使用私有注册表,我们应该使用

导入图像
oc import name url/imagename:tag

然后我们可以使用相同的应用创建新的应用

oc new app name