当前位置: 首页 > 知识库问答 >
问题:

Docker Private Registry-推到“insecure-registry”仍然抱怨“未知权限”

冯通
2023-03-14

我有一个远程Docker注册表设置。它安装了go-daddy SSL证书。

如果我卷曲它,我会得到一个“未知权限”错误:

curl https://example.com:5000/v2/

curl: (60) server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none 
More details here: http://curl.haxx.se/docs/sslcerts.html

...

If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.

所以我使用了“insecure”curl:

curl -k https://example.com:5000/v2
{} //which I guess is because there is nothing in the registry?
curl -k https://example.com:5000/moo

404 page not found //which is positive, as it means the -k flag is suppressing the 'unknown authority' correctly

所以,现在我知道可以通过curl连接到注册表我尝试使用Docker客户端推送一个图像:

docker push example.com:5000/my-image

The push refers to a repository [example.com:5000/my-image] 
unable to ping registry endpoint https://example.com:5000/v0/
v2 ping attempt failed with error: Get https://example.com:5000/v2/: x509: certificate signed by unknown authority
v1 ping attempt failed with error: Get https://example.com:5000/v1/_ping: x509: certificate signed by unknown authority

因此,我尝试通过在DOCKER_OPTS中添加'insecure-registry'来抑制错误(如下所述):

docker_opts=“--insecure-registry example.com:5000”

[重新启动docker后台进程]

而且它不起作用。我得到了同样的“未知权威”警告。

首先,为什么Go Daddy的证书不被信任?我在nginx服务器上设置了它,它在浏览器上的“绿色条”上运行良好。

共有1个答案

涂泰平
2023-03-14

好吧,我查清楚了。

结果表明,我不需要用以下内容修改/etc/default/docker:

DOCKER_OPTS="--insecure-registry example.com:5000"

问题是我在注册表中安装的Go-Daddy证书也需要有中间证书。我收到了Go-Daddy的以下信息:

domain.crt
some-bundle.crt
cat bundle.crt >> domain.crt
 类似资料:
  • 问题内容: 我下面这个线程,这一个建立自己的KDE没有须藤权限。由于没有在工作站上安装Git和CMake。我只是将它们都安装在 / home / <用户>下,并将 / home / <用户> / bin和 / home / <用户> / lib添加 到PATH和LD_LIBRARY_PATH中。由于KDE构建仅支持CMake,因此不进行配置。因此,我必须通过CMake设置前缀,如下所示:。在这一点

  • 问题内容: 我尝试在Ubuntu 12.04上安装Pycharm,并且得到以下信息: 正常工作该怎么办? 问题答案: 由于Oracle设置的限制,大多数较新的发行版不再包含Oracle(Sun)JDK。相反,它们与OpenSDK一起提供。尽管OpenSDK适用于大多数应用程序,但PyCharm似乎存在一些问题。 您必须手动安装Oracle(Sun)JDK,并确保它是默认JDK或在启动PyCharm

  • 我正在尝试编写一个列出目录中所有非隐藏文件的方法。但是,当我添加条件 我的代码无法编译,编译器返回以下错误: 我试图捕捉< code>IOException,但是编译器仍然拒绝编译我的代码。我遗漏了什么明显的东西吗?代码如下所示。

  • 是否可以指定文件中的字符串在

  • 当我尝试启动spring boot应用程序时,我遇到了以下错误。它甚至在我提供作业参数之前就给出了一个错误,该参数是作业的参数。 许多讨论建议使用资源作为来解决这个问题。但对我没用。提前谢了。

  • 我一直在尝试以多种不同的方式在windows上构建fltk,但最终我总是得到: 配置:错误:C编译器无法创建可执行文件(msys fltk/配置) 或 检查C编译器是否正常工作:C:/MinGW/bin/gcc.exe--已损坏(CMake-gui) 我用fltk 1.3.0和1.3.3试用过它,我甚至用过三个不同的MinGW发行版,GCC版本:。但它无法编译。以下是由生成的一些错误日志/配置文件