docker push

From wikieduonline
Revision as of 07:25, 27 August 2024 by Welcome (talk | contribs)
Jump to navigation Jump to search

docker push push/upload an image or a repository to a registry

docker push [OPTIONS] NAME[:TAG]
docker push --help
docker push my_image_name
docker push yourepo.company.com/my-image-name:0.1 (use docker tag first)
docker push aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository:tag
docker push aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository
Using default tag: latest
The push refers to repository [aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository]
An image does not exist locally with the tag: aws_account_id.dkr.ecr.us-west-2.amazonaws.com/my-repository

Solution: docker tag

docker push --quiet your_image


Errors

docker push yourepo.company.com/my-image-name:0.1
The push refers to repository [0987654321.dkr.ecr.eu-west-1.amazonaws.com/yourimage]
6e4707a7ffef: Preparing
b284af3bfffe: Preparing
denied: Your authorization token has expired. Reauthenticate and try again.


docker push your-image yourepo.company.com/my-image-name:0.1
 
"docker push" requires exactly 1 argument.
See 'docker push --help'.

Usage:  docker push [OPTIONS] NAME[:TAG] 

Push an image or a repository to a registry

Solution: use docker tag first to tag remote repository


no basic auth credentials

Examples

docker push 123456789.dkr.ecr.eu-west-1.amazonaws.com/test:test
The push refers to repository [123456789.dkr.ecr.eu-west-1.amazonaws.com/test]
f14ff08d5dd8: Layer already exists
e8021939f780: Layer already exists
62b91c8f98ba: Layer already exists
831752bc44cf: Layer already exists
9cd7ab30bc7a: Layer already exists
53f34d42171e: Layer already exists
5f70bf18a086: Layer already exists
78584bfdde14: Layer already exists
7c3614922921: Layer already exists
ed97e53597b7: Layer already exists
11ee7ee7b4ec: Layer already exists
a87ed74e4271: Layer already exists
c0a7e64cd447: Layer already exists
f1417ff83b31: Layer already exists
test: digest: sha256:f84f07adfsafsafasfaf7b3fbt size: 3255

Errors

docker push "your_ecr_repo/elasticsearch:v9.9"
The push refers to repository [xxxxxxxx.dkr.ecr.eu-central-1.amazonaws.com/repo/name]
40a381ca46dc: Preparing
f9cd3098ca32: Preparing
c3e87cd6748e: Preparing
3995c6207484: Preparing
9cbb1bc9540c: Preparing
2dca0f18577a: Waiting
e77d17b4c748: Waiting
5fde16b8f2a5: Waiting
bb800dda9d0e: Waiting
f92203fcb38b: Waiting
e9fb19c67236: Waiting
0a367bc63a2a: Waiting
denied: Your authorization token has expired. Reauthenticate and try again.
Solution: docker login or aws ecr get-login-password

Example automation

name: Build and Push Docker Images 

on:
  push:
    branches:
      - main
  workflow_dispatch:
jobs:
  build-and-push:
    runs-on: ubuntu-latest 
    steps:
    - name: Checkout code
      uses: actions/checkout@v3
    - name: Set up Docker Buildx
      uses: docker/setup-buildx-action@v3
    - name: Log in to Docker Hub
      uses: docker/login-action@v2
      with:
        username: $Template:Secrets.DOCKER USERNAME
        password: $Template:Secrets.DOCKER PASSWORD

    - name: Build and push l2-geth-ccc
      uses: docker/build-push-action@v5
      with:
        context: ./l2-geth-ccc
        push: true
        tags: ${dockerhub_username}/l2-geth-ccc:latest
    - name: Build and push l2-geth-no-ccc
      uses: docker/build-push-action@v5
      with:
        context: ./l2-geth-no-ccc
        push: true
        tags: ${dockerhub_username}/l2-geth-no-ccc:latest
    - name: Build and push zkrc-zircuit-block-serializer
      uses: docker/build-push-action@v5
      with:
        context: ./zkrc-zircuit-block-serializer
        push: true
        tags: ${dockerhub_username}/zkrc-zircuit-block-serializer:latest
    - name: Build and push faultmon
      uses: docker/build-push-action@v5
      with:
        context: ./faultmon
        push: true
        tags: ${dockerhub_username}/faultmon:latest


Related terms

See also

Advertising: