我正在运行带有 GitLab 运行器和 Docker 执行器的自托管 GitLab CE。我想为 AWS Lambda 构建一个二进制文件,因此我将 amazonlinux:latest 映像用于我的 Docker 执行程序。
当然,并非我构建所需的所有软件包都在基础 amazonlinux 映像中可用,因此我通过 yum 安装它们。不幸的是,cmake 不适用于 Amazon Linux,所以我从源代码构建它。
目前,每次管道运行时都会发生这种情况,这不是最佳的,因为 cmake 需要相对较长的时间来构建(与我实际想要构建的二进制文件相比)。
我的一般问题是:是否有一种干净且可重复的方法来准备构建图像,然后将其用作 GitLab CI 的基础图像?由于我对 Docker 和朋友比较陌生,在运行程序主机上本地创建映像并在我的 gitlab-ci.yml 中使用它的正确方法是什么?或者我应该把它放在一个注册表中(甚至可能是 GitLab 自己的容器注册表?)