简体   繁体   中英

Run entire GitHub Actions workflow job in private docker container

I am trying to use the container option in a GitHub Actions workflow to run the entire job in a docker container. How do I specify the login credentials to retrieve this docker image from a private repository on docker hub?

jobs:
  build:
    runs-on: ubuntu-18.04
    container: private_org/test-runner:1.0

I have successfully used the following docker-login "action" to authenticate with docker hub as a "step", but this does not get performed until after the job-level container gets initialized.

jobs:
  build:
    runs-on: ubuntu-18.04
    steps:
    - uses: azure/docker-login@v1
      with:
        username: me
        password: ${{ secrets.MY_DOCKERHUB_PASSWORD }}
    - name: test docker creds
      run: docker pull private_org/test-runner:1.0

This was implemented recently. Use the following workflow definition:

jobs:
  build:
    container:
      image: private_org/test-runner:1.0
      credentials:
        username: me
        password: ${{ secrets.MY_DOCKERHUB_PASSWORD }}

Source: https://github.blog/changelog/2020-09-24-github-actions-private-registry-support-for-job-and-service-containers/

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM