0.2.1 • Published 4 years ago

cached-docker-build-push v0.2.1

Weekly downloads
3
License
ISC
Repository
github
Last release
4 years ago

Cached docker build push

Execute docker build and push using docker caches.

Github Action

- uses: devmasx/cached-docker-build-push@v0.1.1
  with:
    image_name: devmasx/project-name
    cache_stage_target: builder
    build_params: --build-arg=NPM_TOKEN=${{secrets.NPM_TOKEN}}

Use your own docker authentication for private repositories Examples:

Azure

- run: az acr login --name myregistry
- uses: devmasx/cached-docker-build-push@v0.1.1
  with:
    image_name: devmasx/project-name

Google cloud

- run: gcloud auth configure-docker
- uses: devmasx/cached-docker-build-push@v0.1.1
  with:
    image_name: devmasx/project-name

Docker Hub

- run: |
  docker login -u ${{secrets.DOCKER_USERNAME}} -p ${{secrets.DOCKER_PASSWORD}}
- uses: devmasx/cached-docker-build-push@v0.1.1
  with:
    image_name: devmasx/project-name

Usage

Docker build

Use the latest docker image for use as cache

npx cached-docker-build-push --image-name image-name --image-tag v1

Execute this docker commands:

docker pull image-name || exit 0
docker build --cache-from=image-name -t image-name -t image-name:v1
docker push image-name:v1
docker push image-name

Docker build with multi stage

With multi stage we need to save the builder stage for use as cache. All stages are build and push by default, or set the target using --cache-stage-target.

npx cached-docker-build-push --cache-stage-target=builder --image-name image-name --image-tag v1

Execute this docker commands:

docker pull image-name:cache-builder || exit 0

docker build \
 --cache-from=image-name:cache-builder \
 --target builder \
 -t image-name:cache-builder \
 .

docker build \
 --cache-from=image-name:cache-builder \
 -t image-name \
 -t image-name:v1 \
 .

docker push image-name:cache-builder
docker push image-name:v1
docker push image-name

See more

npx cached-docker-build-push --help
0.2.1

4 years ago

0.2.0

4 years ago

0.1.1

4 years ago

0.1.0

4 years ago