在 docker 构建期间访问主机目录 - Gitlab Runner

问题描述 投票:0回答:1

我目前正在为我们的网络项目开发 CICD 管道。这是一个 C# blazor Web 应用程序。

由于我们使用自己的 Nuget 软件包,因此我需要在构建阶段安装/添加我们的本地证书颁发机构。否则,无法检索 Nuget 包。 目前,该证书是该项目的一部分。但是,我更愿意将此证书存储在主机上的目录中并在管道期间访问它。 (如果您有其他建议,我也很乐意接受。) 这样,我们的每个项目都可以访问它。

我将 Gitlab 运行程序作为具有以下卷的 Docker 容器启动: -v /usr/local/share/ca-certificates:/usr/local/share/ca-certificates 从逻辑上讲,相应的 CA 证书位于主机上的 /usr/local/share/ca-certificates 下。

在运行程序配置中,我已在 [runners.docker] 部分中相应地指定了卷:volumes = [..., "/usr/local/share/ca-certificates:/usr/local/share/ca-certificates ”]

最后,我相应地将卷添加到 Dockerfile 中: VOLUME /usr/local/share/ca-certificates:/usr/local/share/ca-certificates

但是,后续的 update-ca-certificates 命令没有找到任何文件。

这是正确的程序吗?根据我的理解,结构如下图所示: system diagram 我将非常感谢任何帮助!

最诚挚的问候 卢卡斯

docker gitlab-ci gitlab-ci-runner
1个回答
0
投票

根据 @Hans Kilian 的建议,我使用已安装的 ca 证书制作了自定义映像,并将其用于构建过程。

这就像一个魅力。 谢谢!

© www.soinside.com 2019 - 2024. All rights reserved.