0

我正在尝试在使用 testcontainers 测试库写入 mongodb 时运行 Spring Boot 应用程序的测试。测试容器应该启动一个运行 mongodb 的 Docker 镜像。然后我运行我的测试,它连接到数据存储,写一些东西,我有断言来确保这些东西被存储。然后一切都消失了。

该测试需要在我们公司网络内的 Jenkins 构建代理(在 Red Hat Linux 7.5 上)上运行,该网络已被很好地锁定。

我们为 docker hub 设置了 Artifactory 代理。当我通常进行 docker 登录时,我给它https://artifactory.example.com或者只是使用“artifactory.example.com/docker-all/image:1.2.3”执行 docker run

Jenkins 运行的日志中包含以下内容:

00:02:13.052  2019-05-22 00:15:59.647  INFO 83570 --- [           main] o.t.d.DockerClientProviderStrategy       : Found Docker environment with Environment variables, system properties and defaults. Resolved: 
00:02:13.052      dockerHost=unix:///var/run/docker.sock
00:02:13.052      apiVersion='{UNKNOWN_VERSION}'
00:02:13.052      registryUrl='https://index.docker.io/v1/'
00:02:13.052      registryUsername='cicduser'
00:02:13.052      registryPassword='null'
00:02:13.052      registryEmail='null'
00:02:13.052      dockerConfig='DefaultDockerClientConfig[dockerHost=unix:///var/run/docker.sock,registryUsername=cicduser,registryPassword=<null>,registryEmail=<null>,registryUrl=https://index.docker.io/v1/,dockerConfigPath=/home/cicduser/.docker,sslConfig=<null>,apiVersion={UNKNOWN_VERSION},dockerConfig=<null>]'

问题:我不知道如何让registryUrl 在那里列出为“ https://artifactory.example.com/docker-all ”并且正确设置了registryUsername 和registryPasswords(如果我们的Artifactory 被锁定以供读取)。

网上有很多关于使用 HTTP 代理提供互联网访问的信息。我想我已经找到了如何做到这一点。但这不是我需要做的。

4

1 回答 1

0

好像不能改网址

您可以在 Jenkins 中以相同的方式登录到您的人工 docker hub 远程,可能使用凭证插件- 假设您有 Jenkinsfiles

希望您也可以从您的 Jenkins docker 代理获取您的工件。如果不是,那么这是一个单独的问题

于 2019-05-24T23:01:14.590 回答