Gitlab runner+;Docker&x2B;Windows-无效的卷规范

Gitlab runner+;Docker&x2B;Windows-无效的卷规范,docker,gitlab,gitlab-ci,gitlab-ci-runner,Docker,Gitlab,Gitlab Ci,Gitlab Ci Runner,在提交之前,我试图使用Gitlab runner和docker在本地运行我的Gitlab CI,以确保它们正常工作。但我有一些奇怪的问题 不幸的是,我别无选择,只能使用windows(我过去在Linux上取得过成功) 每次我在powershell中运行作业时: C:/Gitlab runner/Gitlab runner exec docker npm 我得到一个错误: 作业失败(系统故障):守护进程的错误响应:无效的卷规范:'/host\u mnt/c/builds/project-0/Use

在提交之前,我试图使用Gitlab runner和docker在本地运行我的Gitlab CI,以确保它们正常工作。但我有一些奇怪的问题

不幸的是,我别无选择,只能使用windows(我过去在Linux上取得过成功)

每次我在powershell中运行作业时:

C:/Gitlab runner/Gitlab runner exec docker npm

我得到一个错误:

作业失败(系统故障):守护进程的错误响应:无效的卷规范:'/host\u mnt/c/builds/project-0/Users/Lewsmith/api:c:/Users/Lewsmith/api:ro'(executor\u docker.go:921:0s)

我已尝试设置docker卷(nemerous组合)和builds dir:

C:/Gitlab runner/Gitlab runner exec docker--builds dir/builds--docker privileged--docker volumes”/builds:C:/Gitlab runner/builds“npm

由于C.后面有冒号,因此无法通过守护进程的
错误响应:无效模式:/Gitlab runner/builds

我被难住了,谁能给我指出正确的方向


使用gitlab runner 11.5.0版目前还没有官方支持Windows中的Docker executor。正在进行的工作目前处于打开状态,看起来有些人已经设法让windows docker执行器在该合并请求中取得不同的成功


这显示了他们是如何使用。但是,我不确定这将如何与服务配合使用,因此,Windows上的GitLab Runner尚未完全支持YMMV.

Docker。 解决方法是使用Windows Subsystem for Linux并在那里安装gitlab runner:

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-runner/script.deb.sh | sudo bash
sudo apt-get install gitlab-runner
gitlab-runner exec docker build

你在使用gitlab runner shell executor吗?@Rekovni我在使用docker executor。Shell executor对于运行npm install和linter的作业可以正常工作,但我有一个需要postgres服务的测试作业。服务不能与shell executors一起工作。看来您需要WSL 2才能使其工作,我相信目前只有在预览版本中才能使用。@Janstrup不是真的,WSL2在2020年8月被后端口到1903和1909。