GitHub action to log in to Azure Container Registry (ACR) or any private container registry
Перейти к файлу
Stephen Franceschelli 6a8199f7d6 Remove Integration tests. 2023-10-02 13:07:59 -04:00
.devcontainer Create basic devontainer config 2022-11-18 10:16:26 +00:00
.github Remove Integration tests. 2023-10-02 13:07:59 -04:00
__tests__ Added L0 tests 2021-03-22 15:30:57 +05:30
lib Added L0 tests 2021-03-22 15:30:57 +05:30
src Added L0 tests 2021-03-22 15:30:57 +05:30
.gitignore Added L0 tests 2021-03-22 15:30:57 +05:30
CODE_OF_CONDUCT.md Initial commit 2019-09-04 03:40:45 -07:00
LICENSE Initial commit 2019-09-04 03:40:49 -07:00
README.md Add specific instructions for login-server (#15) 2020-07-30 12:32:26 +05:30
SECURITY.md Initial commit 2019-09-04 03:40:48 -07:00
action.yml Update Node.js to 16 - Node.js 12 is deprecated 2022-10-10 13:56:16 +02:00
jest.config.js Added L0 tests 2021-03-22 15:30:57 +05:30
package-lock.json Update dev dependencies to fix npm error 2022-11-18 10:19:12 +00:00
package.json Update dev dependencies to fix npm error 2022-11-18 10:19:12 +00:00
tsconfig.json Added L0 tests 2021-03-22 15:30:57 +05:30

README.md

Log in to a container registry

Use this GitHub Action to log in to a private container registry such as Azure Container registry. Once login is done, the next set of actions in the workflow can perform tasks such as building, tagging and pushing containers.

- uses: azure/docker-login@v1
  with:
    login-server: '<login server>' # default: index.docker.io
    username: '<username>'
    password: '<password>'

Refer to the action metadata file for details about all the inputs: action.yml

When using the docker-login action, ensure your login-server matches the fully qualified path to your image. You should omit login-server if you are pushing to the default docker hub without a host prefix, for instance, docker push repo/image. You'll need to specify a login-server if you are using the fully qualified path: docker push index.docker.io/repo/image.

Logging in to multiple registries

To log in to multiple registries, simply run this action several times with different credentials; they will accumulate.

- uses: azure/docker-login@v1
  with:
    login-server: contoso.azurecr.io
    username: ${{ secrets.ACR_USERNAME }}
    password: ${{ secrets.ACR_PASSWORD }}
- uses: azure/docker-login@v1
  with:
    login-server: index.docker.io
    username: ${{ secrets.DOCKERIO_USERNAME }}
    password: ${{ secrets.DOCKERIO_PASSWORD }}
- run: |
    docker pull contoso.azurecr.io/private/image:latest
    docker pull private/image:latest    

You can build and push container registry by using the following example

- uses: azure/docker-login@v1
  with:
    login-server: contoso.azurecr.io
    username: ${{ secrets.REGISTRY_USERNAME }}
    password: ${{ secrets.REGISTRY_PASSWORD }}

- run: |
    docker build . -t contoso.azurecr.io/k8sdemo:${{ github.sha }}
    docker push contoso.azurecr.io/k8sdemo:${{ github.sha }}    

Prerequisite

Get the username and password of your container registry and create secrets for them. For Azure Container registry refer to admin account document for username and password.

Now add the username and password as a secret in the GitHub repository.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com.

When you submit a pull request, a CLA bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.