skip to content
barorin&?

Docker上のAlpineにsharpをインストールする

/ 2 min read

Table of Contents

はじめに

DockerコンテナではよくAlpineを使うのですが、その中でsharpをインストールしようとするとエラーが出ることがあります。

必要なパッケージが全然入っていなかったことが原因だったので、それを考慮したDockerfileを作成しました。

方法

  1. Dockerfileに以下を追加してビルドする
Terminal window
# 必要なライブラリ一式をインストール
RUN apk add \
--no-cache --update \
--repository http://dl-3.alpinelinux.org/alpine/edge/testing \
libtool automake autoconf nasm vips-dev fftw-dev gcc g++ make libc6-compat
  1. コンテナ内でnpm install sharpを実行する

トラブルシューティング

npm error gyp ERR! stack FetchError: request to https://unofficial-builds.nodejs.org/download/release/v20.18.3/node-v20.18.3-headers.tar.gz failed, ~ のようなエラーが出ている場合、ネットワーク接続エラーの可能性があります。

その場合は、docker-compose.ymlでDNSを設定することで解決できることがあります。

services:
nodejs:
build: .
dns:
- 8.8.8.8

参考