IT袋

当前位置:主页 > 经验教程 > 建站编程 >

如何在GitLab执行器中使用Podman

如何在GitLab执行器中使用Podman(2)

时间:2023-09-18 07:23:36 来源:IT袋 作者:苏晓敏
导读:如何在GitLab执行器中使用Podman,你将需要一些额外的配置才能使用 Podman。配置执行器为每个作业创建一个网络。有关更多信息,请参阅 GitLab 文档。 首先,启用 Podman 系统服务并修改 /

如何在GitLab执行器中使用Podman

你将需要一些额外的配置才能使用 Podman。配置执行器为每个作业创建一个网络。有关更多信息,请参阅 GitLab 文档。

首先,启用 Podman 系统服务并修改
/etc/gitlab-runner/config.toml
中的环境:

[[runners]]
    environment = ["FF_NETWORK_PER_BUILD=1"]
    

[runners.docker]

host = “unix:///run/user/1001/podman/podman.sock”

重启执行器以实施更改:

$ sudo gitlab-runner restart

验证新的执行器在 GitLab 项目的 设置Settings -> CI/CD -> 执行器Runners 中可见:

接下来,验证你的 CI 流水线正在使用执行器。你的 CI 任务日志将提及正在使用的执行器的名称以及任何其他配置信息,例如 执行器的执行环境的功能标志和容器镜像。

Podman-in-Podman(pipglr)

Chris Evich创建了pipglr,这是一个 Podman-in-Podman 设置,用于使用免 root 的 Podman 来支持你自己的免 root 的 GitLab 执行器。此方法不需要对.gitlab-ci.yaml配置进行任何更改,因此你可以继续按原样使用现有设置。

以下是帮助你运行此程序的快速设置指南。

配置步骤

容器镜像是从 pipglr Containerfile自动构建的,因此将镜像设置为该仓库:

$ IMAGE="registry.gitlab.com/qontainers/pipglr:latest"

接下来,使用你的 GitLab 注册令牌创建 Podman 密钥:

$ echo '

创建一个空白的config.toml,稍后将包含你的所有执行器设置。你必须执行此步骤才能使以下podman container register runlabel $IMAGE步骤成功:

$ touch ./config.toml  # 重要:文件必须存在,即使是空的。

注册你的执行器。你可以重复此步骤来注册多个执行器。如果你想使用可能不同的标签或配置选项集并行运行多个 CI 任务,这非常有用。

$ podman container runlabel register $IMAGE

使用你选择的编辑器编辑config.toml。这是可选的,但通常需要更改用于实际 CI 任务的容器镜像。默认情况下,镜像设置为:
registry.fedoraproject.org/fedora:latest

$ $EDITOR ./config.toml  # if desired

最后,配置对卷的访问。容器卷内使用多个用户,因此你必须专门配置它们以允许访问。再次使用runlabel来完成:

$ podman container runlabel setupstorage $IMAGE
$ podman container runlabel setupcache $IMAGE

测试执行器

是时候检查配置了。首先启动 GitLab 执行器容器:

$ podman container runlabel run $IMAGE

允许执行器用户在注销后运行服务:

$ sudo loginctl enable-linger $(id -u)

验证你的新执行器在 GitLab 项目的 设置Settings -> CI/CD -> 执行器Runners 中可见:

相关阅读

  • 个人如何搭建云服务器教程 电脑搭建小型服务器的方法

    个人如何搭建云服务器教程 电脑搭建小型服务器的方法

    本文导读:个人如何搭建云服务器教程和电脑搭建小型服务器的方法的IT知识,接下来IT袋小编就来介绍。 如果选择云服务器的配置,总的来说要根据应用场景需求来。在云服务器的产品页面,

  • 如何在GitLab执行器中使用Podman

    如何在GitLab执行器中使用Podman

    今天为网友们详解如何在GitLab执行器中使用Podman方面的介绍,继续往下看吧! GitLab 执行器Runner 是一个与 GitLab CI/CD 配合使用的应用,可在 GitLab 基础设施上的流水线中运行作业。它们通常用于

  • csgo准星生成网站 关于csgo准星设置最佳方案

    csgo准星生成网站 关于csgo准星设置最佳方案

    为大家介绍的是csgo准星生成网站和关于csgo准星设置最佳方案的电脑方面的小经验,接下来IT袋带大家一起了解。 很多新人小伙伴看到别的大佬的准星都不是游戏自带的那种,其实他们都是从这

  • 剑侠世界官方网站 剑侠世界1手游官网地址

    剑侠世界官方网站 剑侠世界1手游官网地址

    文章摘要:剑侠世界官方网站和剑侠世界1手游官网地址的IT知识,具体内容如下: 九月的开头,是秋风和夏暑的交接礼,是开学和假期的分割线,伴随着莘莘学子的入学礼,江湖也即将迎来一