Chupurnov Valeriy
Chupurnov Valeriy
Front End Engineer

Ошибки установки Sharp на Alpine Linux

/blog/uploads/images/1631522046893-image-image.webp

Я тут писал, что очень легко и просто получил ресайз картинок на NodeJS, но не тут то было.

Я на сервере использую докер образ node:14-alpine, и в нем просто установка

npm install

Не прошла. Точнее она прошла, но сервер затем просто не запустился.

Рассказывать почему я использую node:14-alpine образ, думаю лишнее. 5mb скажут за себя. Что же делать если установка sharp в alpine происходит с ошибками?

Я долго искал решение, но на sof его так и не нашел. Все варианты падали со всякими ошибками.

Но первая же ссылка (которую я сперва проигнорировал) меня привела на образ alpine-sharp. А если есть Dockerfile то мы можем подсмотреть решение в нем.

Собственно вот решение:

FROM node:14-alpine

WORKDIR /usr/src/app
COPY --from=0 /usr/src/app .

RUN set -x && \
  apk add vips fftw --update --no-cache \
    --repository https://alpine.global.ssl.fastly.net/alpine/edge/testing/ \
    --repository https://alpine.global.ssl.fastly.net/alpine/edge/main/ && \
    rm -rf /var/cache/apk/*

RUN rm -rf ./node_modules && export NODE_ENV=production && npm install && npm update

CMD [ "node", "server/index.js" ]

Все прекрасно запускается.