我想将本文(Getting any Docker image running in your own OpenShift cluster)应用于RedHat Registry中的图片。我选择了rhel8/redis-5 image。我不清楚要遵循的步骤。
我尝试了oc new-app --docker-image=registry.redhat.io/rhel8/redis-5
。即使从RedHat Registry Service帐户复制Docker配置详细信息后,此操作也无法执行。 oc new-app
是否可以处理存储在Docker Hub外部的图像?
接下来,我尝试了OpenShift秘密选项。
遵循Registry Service account中的详细信息以使用OpenShift secret,我们必须运行此命令。 kubectl create -f chainhead-secret.yml --namespace=NAMESPACEHERE
。这就是所谓的图像拉动秘密吗?是否有等效的oc
命令?
下一步是使用yaml
代码段更新Kubernetes配置,如下所示。应该在哪里使用它-oc
,Web控制台,kube-whatever
命令等?
apiVersion: v1
kind: Pod
metadata:
name: somepod
namespace: all
spec:
containers:
- name: web
image: registry.redhat.io/REPONAME
imagePullSecrets:
- name: some-pull-secret
答案 0 :(得分:0)
我不熟悉OpenShift,但是我发现一些可能对您有所帮助的东西。
除了上一个答案中提到的@Arockiasmy K之外,YAML语法不正确。它不会创建广告连播:widget.value = event.target.value;
widget.datasource.load();
必须与spec
位于同一杠杆上。
kind
apiVersion: v1
kind: Pod
metadata:
name: somepod
namespace: all
spec:
containers:
- name: web
image: <image>
另一件事,请确保您已经拥有名为“ 全部”的$ kubectl apply -f <pod-yaml>
,并且请记住该秘密必须与namespace
位于同一namespaces
中。 / p>
希望这会有所帮助。
答案 1 :(得分:-1)
您可以使用kubectl
和oc
创建密钥。两者都可以在Openshift中使用。
oc create -f redhat-secret.yml --namespace=NAMESPACEHERE
确保主机名是registry.redhat.io。您可以通过两种方式将其附加到部署。
oc edit sa default
。