如何在 .gitlab-ci.yml 中的 docker 容器中安装卷?
How do I mount a volume in a docker container in .gitlab-ci.yml?
我在 Android 项目上使用 .gitlab-ci.yml
和 docker 作为 GitLab CI 运行ner。测试结束时运行,gradlew
将测试结果保存在build目录下的xml和html中:
Finished generating test XML results (0.001 secs) into: /builds/org/project/sdk/build/test-results/release
Generating HTML test report...
Finished generating test html results (0.002 secs) into: /builds/org/project/sdk/build/reports/tests/release
我想访问这些文件,但是 documentation 没有提到如何像使用 docker run -v <path>:/builds/org/...
那样安装卷。
我建议不要从主机为您的 CI 安装卷。
如果你真的想要,你必须相应地配置跑步者(config.toml
)。
如果您使用 shared
runners,您永远不知道特定构建将在哪个系统上执行。
我认为更好的解决方案是将测试结果定义为 artifacts。
这样,测试结果可用于旧版本,而不仅仅是最新版本。
您可以在下面找到我用于构建 docker-images 的跑步者的配置 (config.toml
)。您可以将 /var/run/docker.sock
替换为您希望构建结果最终所在的目录。
[[runners]]
name = "Docker"
url = "https://mygitlab/ci"
token = "mytoken"
executor = "docker"
[runners.docker]
tls_verify = false
image = "docker:latest"
privileged = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"]
[runners.cache]
Insecure = false
我在 Android 项目上使用 .gitlab-ci.yml
和 docker 作为 GitLab CI 运行ner。测试结束时运行,gradlew
将测试结果保存在build目录下的xml和html中:
Finished generating test XML results (0.001 secs) into: /builds/org/project/sdk/build/test-results/release
Generating HTML test report...
Finished generating test html results (0.002 secs) into: /builds/org/project/sdk/build/reports/tests/release
我想访问这些文件,但是 documentation 没有提到如何像使用 docker run -v <path>:/builds/org/...
那样安装卷。
我建议不要从主机为您的 CI 安装卷。
如果你真的想要,你必须相应地配置跑步者(config.toml
)。
如果您使用 shared
runners,您永远不知道特定构建将在哪个系统上执行。
我认为更好的解决方案是将测试结果定义为 artifacts。
这样,测试结果可用于旧版本,而不仅仅是最新版本。
您可以在下面找到我用于构建 docker-images 的跑步者的配置 (config.toml
)。您可以将 /var/run/docker.sock
替换为您希望构建结果最终所在的目录。
[[runners]]
name = "Docker"
url = "https://mygitlab/ci"
token = "mytoken"
executor = "docker"
[runners.docker]
tls_verify = false
image = "docker:latest"
privileged = false
disable_cache = false
volumes = ["/var/run/docker.sock:/var/run/docker.sock", "/cache"]
[runners.cache]
Insecure = false