我创建了一个gitlab运行程序。
我选择了docker executor和ubuntu默认镜像。
我把它放在我的.gitlab-ci.yml文件的顶部:
image: microsoft/dotnet:latest
我在想,如果.gitlab-ci.yml文件中没有“images”指令,则gitlab-ci将默认加载ubuntu图像。
但是,有一个奇怪的事情:我现在想知道gitlab-ci是否不是在创建ubuntu容器,然后在ubuntu容器内创建一个dotnet容器。
这是我在gitlab服务器上完成的一个非常难看的测试:我删除了/ usr / bin / docker文件,并用记录参数的脚本替换了它。
这很奇怪,因为作业仍在工作,并且我的日志文件中什么也没有。
谢谢
最佳答案
如果您未指定镜像但您确实指定了镜像,则确实会使用Ubuntu镜像,并且您的作业应在dotnet容器上运行,而不必旋转ubuntu。
测试的行为方式与之相同,因为docker
是客户端,而dockerd
是gitlab运行程序实际调用的守护进程。
如果要检查发生了什么,则应该调用docker ps
来获取正在运行的容器的列表。
关于docker - 带有gitlab-ci.yml的Docker内部的Docker,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50946499/