From 60e78a4fec467313eab24b875359edba5eb4a7cb Mon Sep 17 00:00:00 2001 From: shortstacked Date: Thu, 3 Jul 2025 14:45:48 +0100 Subject: [PATCH] fix: Docker build push stable fix (no-changelog) (#16958) --- .github/workflows/docker-build-push.yml | 12 +++++------ docker/images/n8n/README.md | 28 ++++++++++++++++++++----- package.json | 1 + 3 files changed, 30 insertions(+), 11 deletions(-) diff --git a/.github/workflows/docker-build-push.yml b/.github/workflows/docker-build-push.yml index 5c3594f4fe..05b6167d1d 100644 --- a/.github/workflows/docker-build-push.yml +++ b/.github/workflows/docker-build-push.yml @@ -76,7 +76,7 @@ jobs: runs-on: ${{ matrix.runner }} timeout-minutes: 15 outputs: - image_ref: ${{ steps.determine-tags.outputs.primary_tag }} + image_ref: ${{ steps.determine-tags.outputs.primary_ghcr_manifest_tag }} primary_ghcr_manifest_tag: ${{ steps.determine-tags.outputs.primary_ghcr_manifest_tag }} push_enabled_status: ${{ steps.context.outputs.push_enabled }} release_type: ${{ steps.context.outputs.release_type }} @@ -111,14 +111,14 @@ jobs: - name: Determine build context values id: context run: | - if [[ "${{ github.event_name }}" == "schedule" ]]; then - echo "release_type=nightly" >> $GITHUB_OUTPUT - echo "n8n_version=snapshot" >> $GITHUB_OUTPUT - echo "push_enabled=true" >> $GITHUB_OUTPUT - elif [[ "${{ github.event_name }}" == "workflow_call" ]]; then + if [[ -n "${{ inputs.release_type }}" ]]; then echo "release_type=${{ inputs.release_type }}" >> $GITHUB_OUTPUT echo "n8n_version=${{ inputs.n8n_version }}" >> $GITHUB_OUTPUT echo "push_enabled=${{ inputs.push_enabled }}" >> $GITHUB_OUTPUT + elif [[ "${{ github.event_name }}" == "schedule" ]]; then + echo "release_type=nightly" >> $GITHUB_OUTPUT + echo "n8n_version=snapshot" >> $GITHUB_OUTPUT + echo "push_enabled=true" >> $GITHUB_OUTPUT elif [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then if [[ "${{ inputs.release_type }}" == "branch" ]]; then BRANCH_NAME="${{ github.ref_name }}" diff --git a/docker/images/n8n/README.md b/docker/images/n8n/README.md index a9dd985ae2..b84b380614 100644 --- a/docker/images/n8n/README.md +++ b/docker/images/n8n/README.md @@ -228,15 +228,33 @@ docker run -it --rm \ For more information on configuration and environment variables, please see the [n8n documentation](https://docs.n8n.io/hosting/configuration/environment-variables/). -## Build Docker-Image + +Here's the refined version with good Markdown formatting, ready for your `README`: + +## Build Docker Image + +**Important Note for Releases 1.101.0 and Later:** +Building the n8n Docker image now requires a pre-compiled n8n application. + +### Recommended Build Process: + +For the simplest approach that handles both n8n compilation and Docker image creation, run from the root directory: ```bash -docker buildx build --platform linux/amd64,linux/arm64 --build-arg N8N_VERSION= -t n8n: . - -# For example: -docker buildx build --platform linux/amd64,linux/arm64 --build-arg N8N_VERSION=1.30.1 -t n8n:1.30.1 . +pnpm build:docker ``` +### Alternative Builders: + +If you are using a different build system that requires a separate build context, first compile the n8n application: + +```bash +pnpm run build:deploy +``` + +Then, ensure your builder's context includes the `compiled` directory generated by this command. + + ## What does n8n mean and how do you pronounce it? **Short answer:** It means "nodemation" and it is pronounced as n-eight-n. diff --git a/package.json b/package.json index 68a380fddf..db816a565c 100644 --- a/package.json +++ b/package.json @@ -15,6 +15,7 @@ "build:frontend": "turbo run build:frontend", "build:nodes": "turbo run build:nodes", "build:n8n": "node scripts/build-n8n.mjs", + "build:deploy": "node scripts/build-n8n.mjs", "build:docker": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs", "build:docker:scan": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs && node scripts/scan-n8n-image.mjs", "build:docker:test": "node scripts/build-n8n.mjs && node scripts/dockerize-n8n.mjs && pnpm --filter=n8n-playwright run test:standard",