Ошибки установки Sharp на Alpine Linux
Я тут писал, что очень легко и просто получил ресайз картинок на 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" ]
Все прекрасно запускается.