带有 docker 容器的 bitbucket 管道
bitbucket pipeline with docker container
我有一个正在使用 maven 构建的项目。测试用例使用测试容器启动 MS-SQLserver 实例。管道当前失败。
我使用的管道图像的原因是:
image: maven:3.6.0
缺少 docker 和 sqlserver 映像。
我的问题是:
我是否使用 java + maven + docker + sqlserver 创建自己的映像并在管道文件中使用它
或
只要在管道文件中有命令来安装我需要的东西?我认为这将是 WRT 构建时间较慢的选项
启用 testcontainers ryuk 的 bitbucket 管道失败示例:
2019-09-09 07:21:22.719 WARN 416 --- [containers-ryuk] o.testcontainers.utility.ResourceReaper : Can not connect to Ryuk at localhost:32768
java.net.SocketException: Broken pipe (Write failed)
at java.net.SocketOutputStream.socketWrite0(Native Method) ~[na:1.8.0_222]
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111) ~[na:1.8.0_222]
at java.net.SocketOutputStream.write(SocketOutputStream.java:134) ~[na:1.8.0_222]
at org.testcontainers.utility.ResourceReaper$FilterRegistry.register(ResourceReaper.java:380) ~[testcontainers-1.11.2.jar:na]
您需要将 "docker" 服务添加到管道和 disable Ryuk。
可以获得TestContainers to work with your Bitbucket Pipelines by disabling Ryuk。您还需要在脚本中添加 docker
作为服务,如下所示:
image: atlassian/default-image:2
pipelines:
default:
- step:
script:
- export TESTCONTAINERS_RYUK_DISABLED=true
# Your commands should come after setting the environment variable above
# ...
# ...
services:
- docker
definitions:
services:
docker:
memory: 2048
提供了有关此的详细信息here。
我有一个正在使用 maven 构建的项目。测试用例使用测试容器启动 MS-SQLserver 实例。管道当前失败。
我使用的管道图像的原因是:
image: maven:3.6.0
缺少 docker 和 sqlserver 映像。
我的问题是:
我是否使用 java + maven + docker + sqlserver 创建自己的映像并在管道文件中使用它
或
只要在管道文件中有命令来安装我需要的东西?我认为这将是 WRT 构建时间较慢的选项
启用 testcontainers ryuk 的 bitbucket 管道失败示例:
2019-09-09 07:21:22.719 WARN 416 --- [containers-ryuk] o.testcontainers.utility.ResourceReaper : Can not connect to Ryuk at localhost:32768
java.net.SocketException: Broken pipe (Write failed)
at java.net.SocketOutputStream.socketWrite0(Native Method) ~[na:1.8.0_222]
at java.net.SocketOutputStream.socketWrite(SocketOutputStream.java:111) ~[na:1.8.0_222]
at java.net.SocketOutputStream.write(SocketOutputStream.java:134) ~[na:1.8.0_222]
at org.testcontainers.utility.ResourceReaper$FilterRegistry.register(ResourceReaper.java:380) ~[testcontainers-1.11.2.jar:na]
您需要将 "docker" 服务添加到管道和 disable Ryuk。
可以获得TestContainers to work with your Bitbucket Pipelines by disabling Ryuk。您还需要在脚本中添加 docker
作为服务,如下所示:
image: atlassian/default-image:2
pipelines:
default:
- step:
script:
- export TESTCONTAINERS_RYUK_DISABLED=true
# Your commands should come after setting the environment variable above
# ...
# ...
services:
- docker
definitions:
services:
docker:
memory: 2048
提供了有关此的详细信息here。