【发布时间】:2019-01-26 17:23:12
【问题描述】:
我正在尝试使用https://gitlab.com 构建 Windows 容器,但我没有找到是否支持。
我用一个非常简单的 Dockerfile 做了一个测试:
FROM mcr.microsoft.com/windows/servercore:ltsc2019
CMD echo "Hello World from Windows"
使用 .gitlab-ci.yml
image: docker
services:
- docker:dind
variables:
DOCKER_HOST: tcp://docker:2375
DOCKER_DRIVER: overlay2
before_script:
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
windows:
stage: build
script:
- docker build -t ${CI_REGISTRY}/${CI_PROJECT_PATH}:${CI_COMMIT_REF_SLUG} .
- docker push ${CI_REGISTRY}/${CI_PROJECT_PATH}:${CI_COMMIT_REF_SLUG}
它失败了:
无法在此平台上使用映像操作系统“windows”
错误:作业失败:退出代码 1
找gitlab-runner的文档,好像支持https://docs.gitlab.com/runner/executors/#selecting-the-executor。
有没有办法从在线服务构建一个 windows 容器?
【问题讨论】:
-
跑步机的配置是什么?看起来您正在使用 Linux 容器运行 Linux docker runner。
-
@JakubKania:我猜跑步者使用默认配置,如何配置使用 Windows 跑步者?我的测试可在gitlab.com/mpromonet/dockertest
-
设置您自己的跑步者,而不是使用共享的跑步者。