我一直在空白环境中安装OKD。第一步是镜像OKD图像,以便可以将它们移到新环境中并在本地拉出。我一直在使用OpenShift documentation和this article以及this resource的组合来设置证书。我一直在缓慢但始终如一地进步。
但是,现在尝试使用来实际镜像文件时遇到了麻烦
oc adm -a ${LOCAL_SECRET_JSON} release mirror \
--from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \
--to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \
--to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
我得到以下令人鼓舞的答复:
info: Mirroring 120 images to host.okd-registry.dns:5000/ocp4/openshift4 ...
接着是blobs:
和manifests:
行,最后是该行
stats: shared=0 unique=7 size=105.3MiB ratio=1.00
然后我得到约50行说明
error: unable to retrieve source image quay.io/openshift-release-dev/ocp-v4.0-art-dev manifest
sha256:{some value}: unauthorized: access to the requested resource is not authorized
我有一个码头帐户,但是即使经过研究,我也不确定是否需要这样做,如果是,我将在哪里登录或如何登录。我尝试使用oc login
,然后在发行结构中使用各种地址来执行此操作,但是,如果这是解决方案,则可能使用了错误的参数,因为我无法找到执行此操作的任何指令。>
我还尝试了sudo
的命令。我怀疑这是一个问题,但是我还是尝试了。
我想问题可能出在我的证书上,但是我不确定如何确定是否是这种情况。
任何指导或建议将不胜感激。
答案 0 :(得分:0)
在我发布此答案时,已经确定OKD文档不正确,并且正在指示读者从OCP图像存储库而不是从OKD存储库中拉出,显然这需要其他凭证。已记录了一个错误,希望文档会尽快更新。
正确的环境变量和用于镜像图像的完整命令如下:
LOCAL_REGISTRY=localhost:5000 (or your local domain name and port for the registry)
LOCAL_REPOSITORY=okd
LOCAL_SECRET_JSON=<full path to your pull secret>
OCP_RELEASE=4.5.0-0.okd-2020-10-15-235428
PRODUCT_REPO=openshift
RELEASE_NAME=okd
ARCHITECTURE=not-used-in-okd
oc adm -a ${LOCAL_SECRET_JSON} release mirror \
--from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE} \
--to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \
--to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE} --dry-run