Sharp: Docker installation failed

Created on 23 Oct 2018  路  5Comments  路  Source: lovell/sharp

Since yesterday docker build is failing
with this error
ERROR: unsatisfiable constraints: pc:fftw3 (missing): required by: vips-dev-8.7.0-r0[pc:fftw3] vips-dev-8.7.0-r0[pc:fftw3] vips-dev-8.7.0-r0[pc:fftw3]
it's been working for a couple of months but for some reason it started failing since yesterday

i'm using
node:8-alpine

RUN apk add --update --no-cache \
--repository http://dl-3.alpinelinux.org/alpine/edge/testing \
vips-dev fftw-dev gcc g++ make libc6-compat

also tried
apk add vips-dev fftw-dev build-base --update-cache --repository https://dl-3.alpinelinux.org/alpine/edge/testing/

from the installation manual but i get the same error

Most helpful comment

Getting the same error here. By adding the main repository, the installation will work.

RUN apk add vips-dev fftw-dev build-base --update-cache --repository https://dl-3.alpinelinux.org/alpine/edge/main/ --repository --repository https://dl-3.alpinelinux.org/alpine/edge/testing/

If sharp will be loaded in node (require('sharp')), the following error is occuring:

Error: Error relocating /usr/lib/libexpat.so.1: getrandom: symbol not found
    at Object.Module._extensions..node (module.js:681:18)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)

I temporary solve the problem by using the precompiled libvips library provieded by the sharp package.

All 5 comments

Getting the same error here. By adding the main repository, the installation will work.

RUN apk add vips-dev fftw-dev build-base --update-cache --repository https://dl-3.alpinelinux.org/alpine/edge/main/ --repository --repository https://dl-3.alpinelinux.org/alpine/edge/testing/

If sharp will be loaded in node (require('sharp')), the following error is occuring:

Error: Error relocating /usr/lib/libexpat.so.1: getrandom: symbol not found
    at Object.Module._extensions..node (module.js:681:18)
    at Module.load (module.js:565:32)
    at tryModuleLoad (module.js:505:12)
    at Function.Module._load (module.js:497:3)
    at Module.require (module.js:596:17)
    at require (internal/module.js:11:18)

I temporary solve the problem by using the precompiled libvips library provieded by the sharp package.

how can i do that "I temporary solve the problem by using the precompiled libvips library provieded by the sharp package." ?

I didn't install libvips global. For more information you can checkout the installation guide

Hello, please see https://github.com/libvips/libvips/issues/1142 - the summary is that packages from the edge/testing repo are only guaranteed to work on Alpine Edge.

Pre-compiled binaries are provided for Alpine v3.8+ from sharp v0.21.0.

for Nodejs Docker use

FROM lambci/lambda:build-nodejs12.x

it works fine here

Documentation source https://github.com/lovell/sharp/blob/master/docs/install.md

Was this page helpful?
0 / 5 - 0 ratings