mpr*_*net 6 gitlab docker gitlab-ci
我正在尝试使用https://gitlab.com构建 Windows 容器,但我没有发现这是否受支持。
我用一个非常简单的 Dockerfile 进行了测试:
FROM mcr.microsoft.com/windows/servercore:ltsc2019
CMD echo "Hello World from Windows"
Run Code Online (Sandbox Code Playgroud)
使用 .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}
Run Code Online (Sandbox Code Playgroud)
它失败了:
映像操作系统“windows”无法在此平台上使用
错误:作业失败:退出代码 1
寻找 gitlab-runner 的文档,似乎支持https://docs.gitlab.com/runner/executors/#selecting-the-executor。
有没有办法从在线服务构建 Windows 容器?
自2020 年 1 月起,可以使用Windows Shared Runners (beta) 的在线服务构建 Windows 容器。
今天,我们很高兴地宣布,GitLab 托管的 Windows Shared Runners 已推出测试版。当我们开始向社区推出这项重要服务时,我们邀请您在 GitLab.com 上帮助塑造 Windows 生态系统 CI/CD 工具的方向
例如,使用以下.gitlab-ci.yml
windows:
stage: build
tags:
- shared-windows
- windows
- windows-1809
script:
- docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY
- docker build -t ${CI_REGISTRY}/${CI_PROJECT_PATH}:${CI_COMMIT_REF_SLUG} .
- docker push ${CI_REGISTRY}/${CI_PROJECT_PATH}:${CI_COMMIT_REF_SLUG}
Run Code Online (Sandbox Code Playgroud)
使用简单的Dockerfile
FROM mcr.microsoft.com/windows/servercore:ltsc2019
CMD echo "Hello World from Windows"
Run Code Online (Sandbox Code Playgroud)
管道执行结果

| 归档时间: |
|
| 查看次数: |
7708 次 |
| 最近记录: |