name: Build and Push Alpine NodeJS Image to docker.io Registry on: push: branches: - master jobs: build: name: Build and push nodejs alpine based to docker.io runs-on: ubuntu-latest container: image: ghcr.io/catthehacker/ubuntu:act-latest steps: - name: Check out repository code uses: actions/checkout@v3 - name: Login to docker.io Registry uses: docker/login-action@v3 with: registry: docker.io username: aprimediet password: ${{ secrets.DOCKER_TOKEN }} - name: Build and push 14.21.3 uses: docker/build-push-action@v5 with: context: . file: Dockerfile.alpine build-args: | REGISTRY_URL=aprimediet ALPINE_VERSION=3.14 push: true tags: | aprimediet/nodejs:14.21.3-alpine aprimediet/nodejs:14-alpine - name: Build and push 16.20.2 uses: docker/build-push-action@v5 with: context: . file: Dockerfile.alpine build-args: | REGISTRY_URL=aprimediet ALPINE_VERSION=3.16 push: true tags: | aprimediet/nodejs:16.20.2-alpine aprimediet/nodejs:16-alpine - name: Build and push 18.19.1 uses: docker/build-push-action@v5 with: context: . file: Dockerfile.alpine build-args: | REGISTRY_URL=aprimediet ALPINE_VERSION=3.18 push: true tags: | aprimediet/nodejs:18.19.1-alpine aprimediet/nodejs:18-alpine - name: Build and push 20.15.1 uses: docker/build-push-action@v5 with: context: . file: Dockerfile.alpine build-args: | REGISTRY_URL=aprimediet ALPINE_VERSION=3.20 push: true tags: | aprimediet/nodejs:20.15.1-alpine aprimediet/nodejs:20-alpine - name: Build and push 22.11.0 uses: docker/build-push-action@v5 with: context: . file: Dockerfile.alpine build-args: | REGISTRY_URL=aprimediet ALPINE_VERSION=3.21 push: true tags: | aprimediet/nodejs:22.11.1-alpine aprimediet/nodejs:22-alpine aprimediet/nodejs:alpine