首页 > 解决方案 > 如何在 GitHub 操作中签出 docker 内的 repo

问题描述

设想:

我已经建立了一个图像并上传到 ECR。

现在在 GitHub 操作中,我需要提取该图像并针对 git 存储库运行一些命令。

但是,由于写入权限错误,似乎无法在 docker 内执行操作/结帐。

想知道有没有办法解决这个问题。

标签: dockergithub-actions

解决方案


使用对我有用的检查存储库actions/checkout@v2,但前提是我切换到对默认目录具有足够权限的用户,例如root1001(GitHub Actions 使用的用户):

jobs:
  my-job-name:
    runs-on: ubuntu-latest
    container:
      image: ghcr.io/<whatever>
      options: --user root
    steps:
      - name: Checkout repository
        uses: actions/checkout@v2

这似乎源于我的自定义容器图像,而不是来自操作。

如果您不想以 as 运行root,则有一个相关问题,说明您也可以在签出存储库之前先获得目录的所有权。


推荐阅读