docker - 使用 docker swarm 从私有(private)注册表运行容器

标签 docker

我正在尝试使用 docker swarm 从私有(private)注册表运行图像。

我有一个已标记并推送到私有(private)注册表的图像。如果我在本地运行它:
docker run -p 8000:8000 -d registry.mydomain.com:8080/myimage
它运行良好。

如果我激活我的 swarm 并尝试从那里运行:
$(docker-machine env --swarm swarm-master) docker login registry.mydomain.com:8080 docker run -p 8000:8000 -d registry.mydomain.com:8080/myimage
我得到“需要身份验证”。

我实际上是在尝试通过 docker 远程 API 来执行此操作,但首先我想我应该让它在命令行上运行。

这可能吗?

谢谢!

最佳答案

只是好奇,您正在使用身份验证,但没有 SSL?我认为 docker 仅支持基于 SSL 的基本身份验证。您可以尝试使用不安全标志启动 docker,以至少尝试 swarm 的功能。

docker -d --insecure-registry registry.mydomain.com:8080

您得到的错误可能是 docker swarm host 试图首先从您的注册表中拉下图像,因为 run 可以是拉我这个图像并运行它的简写。

关于docker - 使用 docker swarm 从私有(private)注册表运行容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28998089/

相关文章:

ruby-on-rails - 捆绑程序安装的 gem 无法持久保存在无花果/docker 中

docker - 入口 nginx digital ocean 上的 ssl 终止

docker - 在 docker 中更改 transparent_hugepage

mysql - MariaDB 不能在 docker 容器内吗

docker - 使用临时 docker 容器时,收到此错误消息 ""无法解码 DNS 消息”

mysql - 无法通过 phpmyadmin 连接到 laradock mysql 容器

postgresql - Spring Boot Docker 容器无法连接到 Docker 主机上托管的 postgresql

docker - 为什么我们在Asp.net core的DockerFile中需要多个复制指令

docker - 在 Dockerfile __after__ 链接容器启动后运行命令

docker - 通过发送 SIGTERM 停止正在运行的 Docker 容器