tcoopman / image-webpack-loader

Image loader module for webpack

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

[Suggestion] add guide for containers(docker) and ci

vitoyucepi opened this issue · comments

commented

Summary

After update I've researched how to build my project in container using gitlab-ci.
To build my project I have to build binary dependencies since image-webpack-loader@7.0.0 because gifsicle-bin have no prebuilt binaries.
I've checked:

  • node:12-buster
  • node:12-buster-slim
  • node:12-stretch
  • node:12-stretch-slim
  • node:12-alpine
  • node:12-alpine3.9

My prepare script benchmark results:

  1. node:12-buster-slim
    node:12-stretch-slim
    exec time: 3 minutes
    Prepare script:
    apt-get update
    apt-get install -y --no-install-recommends autoconf automake g++ libpng-dev make
  2. node:12-buster
    node:12-stretch
    exec time: 3 minutes 30 seconds
    Prepare script: NO
  3. node:12-alpine
    node:12-alpine3.9
    exec time: 4 minutes 20 seconds
    Prepare script:
    apk add --no-cache autoconf automake file g++ libtool make nasm libpng-dev

Why alpine is slow

There's no prebuilt binary packages for musl.

Why buster(stretch) is slower than buster-slim(stretch-slim)

Full debian version is about 6x larger than slim version.

My request

Add prepare scripts to readme or create wiki page for that.

Additional info

imagemin/imagemin-gifsicle#32
imagemin/imagemin-gifsicle#40
imagemin/gifsicle-bin#79
imagemin/gifsicle-bin#113
imagemin/mozjpeg-bin#47
imagemin/optipng-bin#110

Can you create a PR for this?

commented

@tcoopman should I create PR for README.md, another .md file or wiki page?

We don't have a wiki so far, so add it to the readme, we can refactor later if it would be too long

closed via: #266