当使用CICD的Conducto时,我必须创建自己的dockerfile吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当使用CICD的Conducto时,我必须创建自己的dockerfile吗?相关的知识,希望对你有一定的参考价值。

我想把我的CICD转移到Conducto上。这将涉及到构建c++代码,在python和c++代码上运行静态分析,以及运行python和c++代码的测试。虽然我知道我可以使用dockerhub的预定义镜像,但我相信我的设置会更复杂,因为我需要为python和c++安装依赖关系。

答案

制作基础容器

我建议使用一个dockerfile来创建你的devenv,并且没有你的代码。

对于你的Dockerfile,使用

FROM centos
RUN yum install -y gcc
# Use 'RUN <command>' to add whatever other packages you need.

对于您的节点的 image,使用 co.Image(dockerfile="path/to/Dockerfile") 它将把你的Dockerfile构建成一个镜像,并将其用于所有子节点。路径是相对于包含该函数调用的文件进行评估的。

把你的代码放到新的容器中

遵循以下建议 行为执行环境.

复制本地代码,使用 co.Image(dockerfile="../Dockerfile", copy_dir=".") 的内容,复制到 . 你的文件所在的目录)。Live Debug会自动工作,如果要重建你的图片,只需点击应用中的 "重建 "按钮。

要从git拉取文件 取而代之 copy_urlcopy_branch 而不是 copy_dir,而指挥部将 git pull 而不是从本地文件系统复制代码。要更新你的镜像,只需git推送你的代码,然后点击 "重建",Conducto就会重新抓取它。如果你想运行实时调试(你应该这样做,它很棒),按照上面链接中 "为调试而安装本地代码 "中的解释,指定path_map。

以上是关于当使用CICD的Conducto时,我必须创建自己的dockerfile吗?的主要内容,如果未能解决你的问题,请参考以下文章

coding上的免费的编译打包推镜像工具(cicd)太强了,必须分享一下

coding上的免费的编译打包推镜像工具(cicd)太强了,必须分享一下

coding上的免费的编译打包推镜像工具(cicd)太强了,必须分享一下

tfs 2013 中的 CICD

Github CICD 测试在 laravel 中无法正常工作?

使用Drone+gitea配置自己的CICD流程