name: Docker Base Image CI on: workflow_dispatch: inputs: node_version: description: 'Node.js version to build this image with.' type: choice required: true default: '20' options: - '18' - '20' - '22' jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4.1.1 - name: Set up QEMU uses: docker/setup-qemu-action@v3.0.0 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3.0.0 - name: Login to GitHub Container Registry uses: docker/login-action@v3.0.0 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Login to DockerHub uses: docker/login-action@v3.0.0 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - name: Build uses: docker/build-push-action@v5.1.0 with: context: . file: ./docker/images/n8n-base/Dockerfile build-args: | NODE_VERSION=${{github.event.inputs.node_version}} platforms: linux/amd64,linux/arm64 provenance: false push: true tags: | ${{ secrets.DOCKER_USERNAME }}/base:${{ github.event.inputs.node_version }} ghcr.io/${{ github.repository_owner }}/base:${{ github.event.inputs.node_version }}