feat(docker): reduce the size of alpine docker images (#3973)
* reduce redundant code between the two alpine Dockerfiles * reduce the docker image build times * reduce the `n8n` image size from 1.17GB to 462MB * reduce the `n8n-custom` image size from 671MB to 460MB * reduce the size of npm tree by making all typing packages devDependencies Partially resolves this ticket: N8N-3252
This commit is contained in:
committed by
GitHub
parent
8fc9f07f39
commit
398adb23e8
35
.github/workflows/docker-base-image.yml
vendored
Normal file
35
.github/workflows/docker-base-image.yml
vendored
Normal file
@@ -0,0 +1,35 @@
|
||||
name: Docker Base Image CI
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
node_version:
|
||||
description: 'Node.js version to build this image with.'
|
||||
type: string
|
||||
required: true
|
||||
default: '16'
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v1
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v1
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v1
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
- name: Build
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: ./docker/images/n8n-base
|
||||
build-args: |
|
||||
NODE_VERSION=${{github.event.inputs.node_version}}
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: |
|
||||
${{ secrets.DOCKER_USERNAME }}/base:${{ github.event.inputs.node_version }}
|
||||
2
.github/workflows/docker-images-nightly.yml
vendored
2
.github/workflows/docker-images-nightly.yml
vendored
@@ -57,7 +57,7 @@ jobs:
|
||||
file: ./docker/images/n8n-custom/Dockerfile
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: n8nio/n8n:${{ github.event.inputs.tag || 'nightly' }}
|
||||
tags: ${{ secrets.DOCKER_USERNAME }}/n8n:${{ github.event.inputs.tag || 'nightly' }}
|
||||
no-cache: true
|
||||
- name: Call Success URL - optionally
|
||||
run: |
|
||||
|
||||
Reference in New Issue
Block a user