You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

私有子网EC2实例安装GitLab Runner遇443端口访问超时的解决办法

解决私有子网EC2实例安装GitLab Runner的443访问超时问题

以下是几个无需将实例移至公有子网的实用方案,操作步骤简单易上手:

方案1:通过堡垒机中转下载文件(新手友好)

  1. 在能访问外网的本地电脑上执行下载命令,获取GitLab Runner二进制文件:
    curl -L --output gitlab-runner-linux-amd64 https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
    
  2. 通过堡垒机将本地文件传到私有子网的EC2实例(替换命令中的占位符为实际信息):
    scp -o ProxyCommand="ssh -W %h:%p 堡垒机用户名@堡垒机公网IP" gitlab-runner-linux-amd64 EC2实例用户名@EC2内网IP:/tmp/
    
  3. 登录EC2实例,将文件移到指定目录并赋予执行权限:
    sudo mv /tmp/gitlab-runner-linux-amd64 /usr/local/bin/gitlab-runner
    sudo chmod +x /usr/local/bin/gitlab-runner
    

方案2:配置S3 VPC端点(长期解决外网访问需求)

通过AWS VPC端点让私有子网实例直接访问S3服务(GitLab Runner存储在S3):

  1. 登录AWS控制台,进入「VPC」服务
  2. 点击左侧菜单「端点」→「创建端点」
  3. 服务类型选择「AWS服务」,搜索并选中com.amazonaws.<你的区域>.s3(例如com.amazonaws.us-east-1.s3)
  4. 选择目标私有子网,关联允许实例访问S3的安全组
  5. 完成端点创建后,回到EC2实例重新执行原下载命令即可

方案3:临时通过堡垒机作为代理下载

如果堡垒机支持HTTP代理功能(假设代理端口为3128):

  1. 登录EC2实例后,临时设置代理环境变量:
    export https_proxy=http://堡垒机内网IP:3128
    
  2. 执行原下载命令:
    sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
    
  3. 下载完成后取消代理:
    unset https_proxy
    

内容的提问来源于stack exchange,提问作者Paul Quinn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 01:29:51