GitHub Actions 使用自定义容器Registry时如何指定私有镜像?
GitHub Actions 私有镜像仓库容器使用配置
该需求完全可以实现,GitHub Actions 原生支持从私有 Registry 拉取容器作为任务运行环境,具体配置步骤如下:
- 首先在对应 GitHub 仓库的「设置 → Secrets and variables → Actions」路径下添加3个仓库密钥:
REGISTRY_ADDR:填写私有镜像仓库地址,即my.server.com:1234(无需加https://前缀)REGISTRY_USER:私有仓库的登录用户名REGISTRY_PWD:私有仓库的登录密码或授权访问令牌
- 之后在 Workflow 配置文件的对应任务中,补充
container块的完整配置,除指定镜像地址外额外传入认证凭证即可,完整示例如下:
jobs: codeql-scan: runs-on: ubuntu-latest container: # 直接填写私有镜像完整地址,无需加https前缀 image: my.server.com:1234/dir/image-name:latest # 传入私有仓库认证信息 credentials: username: ${{ secrets.REGISTRY_USER }} password: ${{ secrets.REGISTRY_PWD }} steps: # 以下为你原本的任务步骤,比如拉取代码、执行CodeQL扫描等 - uses: actions/checkout@v4 - name: Initialize CodeQL uses: github/codeql-action/init@v3 # 其余步骤保持不变
注意:如果你使用的是自托管Runner,且宿主机已经提前配置好私有Registry的登录认证,也可以省略
credentials字段直接填写镜像地址即可,不过仍然建议通过仓库密钥管理认证信息,安全性更高。
内容的提问来源于stack exchange,提问作者Andrei Rînea
相关产品推荐
相关产品推荐

