首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GitLab运行程序应该在哪里运行?

GitLab运行程序应该在哪里运行?
EN

Stack Overflow用户
提问于 2019-01-29 09:56:16
回答 2查看 2.6K关注 0票数 7

我正在尝试使用GitLab CI设置一个持续集成/部署管道,并且我很难理解(在文档中找不到任何信息)关于GitLab运行程序实际应该在哪里居住的信息。我应该在我的本地机器上运行吗?应该有一个服务器来托管运行程序吗?

据我理解,运行程序的目的是执行由提交触发的作业。提交后,GitLab运行程序将尝试并执行.gitlab-ci.yml文件中定义的作业。

我知道这些作业可以做很多事情,但是作为一个起点,我只想把SSH放到服务器中,然后部署我的代码。

我的困惑来自于不理解推荐的跑步者应该住和跑的地方是什么?将其存储在本地计算机上似乎有潜在的问题,因为这将依赖于我的机器处于可供部署工作的状态。这是否意味着我们只为跑步者本身需要另一台服务器?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-01-29 15:06:48

哪里?好吧,只要你愿意。Gitlab运行在拉模式下,即运行者联系服务器的web并检查作业,它还与服务器联系以上传所有日志。这意味着gitlab运行程序可以落后于NAT,也可以是非常动态的。

SSH执行器通过从运行程序到目标的SSH连接运行。这意味着有跑步者的机器必须有到目标服务器的路由。

至于你应该在哪里跑步呢?那就看你了。也许你需要偶尔在你的笔记本电脑上运行它来连接本地的VM,也许你需要云中一台强大的机器,也许你想在你的地下室的旧服务器上运行一台便宜的机器。也许这三个都是。

票数 7
EN

Stack Overflow用户

发布于 2019-01-29 11:53:52

正如文档所述,GitLab运行程序是隔离的(虚拟)机器,它们通过GitLab CI的协调器API来获取作业。它们可以安装在每个发行版中。在配置之前,从admin/runners页面获取runner令牌。然后注册到

sudo gitlab-runner register

您可以使用GitLab运行在对接图像对您的VPS,例如AWS。这是跑步机的例子.驱动程序设置为amazonec2,有多个选项,如访问键、区域、秒组.

代码语言:javascript
复制
  [runners.machine]
    IdleCount = 1
    IdleTime = 1800
    MaxBuilds = 10
    OffPeakPeriods = [
      "* * 0-9,18-23 * * mon-fri *",
      "* * * * * sat,sun *"
    ]
    OffPeakIdleCount = 0
    OffPeakIdleTime = 1200
    MachineDriver = "amazonec2"
    MachineName = "gitlab-docker-machine-%s"
    MachineOptions = [
      "amazonec2-access-key=XXXX",
      "amazonec2-secret-key=XXXX",
      "amazonec2-region=us-central-1",
      "amazonec2-vpc-id=vpc-xxxxx",
      "amazonec2-subnet-id=subnet-xxxxx",
      "amazonec2-zone=x",
      "amazonec2-use-private-address=true",
      "amazonec2-tags=runner-manager-name,gitlab-aws-autoscaler,gitlab,true,gitlab-runner-autoscale,true",
      "amazonec2-security-group=xxxxx",
      "amazonec2-instance-type=m4.2xlarge",
    ]

在runners.docker部分中,设置默认的Docker图像。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54418318

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档