在不受控制的CI环境中连接到不安全的本地Docker注册表

问题描述 投票:0回答:1

我正在构建在Docker注册表上执行操作的微服务。

我正在构建的微服务具有通过docker-registry image in Docker Hub启动docker-registry的测试,因此微服务可以连接到它,对其进行设置,对其进行处理等...

CI中的测试失败:Docker客户端因为不安全而无法连接到测试注册表。每次都是在CI中,并且是动态的,不同的随机IP /端口,并且其他并行测试使用了docker守护程序...因此,让测试编辑全局jsons并重新启动docker守护程序似乎是一个糟糕的解决方案。

有人解决了吗?如何在CI中测试与docker-registry的集成?我注定要修改全局docker jsons并重新启动/触发配置的重新加载吗?

一些细节:构建工具是Bazel,并且在GCB中运行,因此测试本身在Google云上的RBE工作程序中运行,这些工作是隔离的,并且在运行测试时没有网络访问权限,我实在无法配置太多,这不是我的机器,每次测试时都是s机...

docker testing continuous-integration docker-registry
1个回答
0
投票

我们最终启动了另一个包含docker守护程序的容器(无需安装外部docker守护程序套接字,因此它实际上是另一个docker守护程序实例)。

我们会在闲暇时这样做,因此只有在我们知道私有注册表地址并将docker守护程序配置为使用不安全的注册表标志启动时,才进行此操作。

为了使容器进行通信,我们让其容器具有名称并共享网络。

© www.soinside.com 2019 - 2024. All rights reserved.