AWS EC2 GitLab-Runner配置中url与clone_url的取值疑问
GitLab Runner [runners.machine] 段url和clone_url配置说明
核心配置逻辑
这两个参数均指向你的GitLab实例访问地址,分场景填写:
url 参数:GitLab Runner用于和GitLab服务器通信(注册、上报作业状态、拉取构建任务)的地址。
- 使用GitLab官方托管服务(GitLab.com):填
https://gitlab.com/ - 自托管EC2 GitLab服务:
- 公网访问场景:填写EC2实例的公网IP或绑定的自定义域名,比如
https://your-ec2-public-ip/ - 内网访问场景(Runner与GitLab同属一个VPC):填写EC2实例的私有IP,比如
https://your-ec2-private-ip/
- 公网访问场景:填写EC2实例的公网IP或绑定的自定义域名,比如
- 使用GitLab官方托管服务(GitLab.com):填
clone_url 参数:Docker Machine创建的临时EC2实例克隆代码仓库的地址,无特殊需求时直接和
url保持一致即可;如果内网克隆速度更快(同VPC环境),也可以单独填写内网地址。
修正后的配置示例(以自托管内网GitLab为例)
executor = "docker+machine" limit = 1 IdleCount = 1 [runners.docker] image = "alpine" privileged = true disable_cache = true [runners.cache] Type = "s3" Shared = true [runners.cache.s3] ServerAddress = "s3.amazonaws.com" BucketName = "CI_Output_test" BucketLocation = "ca-central-1b" [runners.machine] IdleCount = 1 # 替换为你的GitLab实例实际地址 clone_url = "https://10.0.0.100/" url = "https://10.0.0.100/" IdleTime = 1800 MaxBuilds = 100 MachineDriver = "amazonec2" MachineName = "gitlab-docker-machine-%s" MachineOptions = [ "amazonec2-access-key=AKIARKHQWANMXAYATCNY", "amazonec2-secret-key=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", "amazonec2-region=ca-central-1", "amazonec2-vpc-id=vpc-81395de9", "amazonec2-ssh-user=ubuntu", "amazonec2-zone=b", "amazonec2-root-size=32", "amazonec2-subnet-id=subnet-8ff553f5", "amazonec2-use-private-address", "amazonec2-tags=runner-manager-name,gitlab-aws-autoscaler,gitlab,true, gitlab-runner-autoscale,true", "amazonec2-security-group=sg-07473b8e1309d49cd", "amazonec2-request-spot-instance=true", "amazonec2-iam-instance-profile=MacRunnerSSMInstance", "amazonec2-instance-type=c5.4xlarge" ] [[runners.machine.autoscaling]] Periods = ["* * 9-17 * * mon-fri "] IdleCount = 1 IdleTime = 3600 Timezone = "UTC" [[runners.machine.autoscaling]] Periods = [" * * * * sat,sun *"] IdleCount = 1 IdleTime = 60 Timezone = "UTC"
内容的提问来源于stack exchange,提问作者suMmGuy
相关产品推荐
相关产品推荐

