はじめに
Dockerfileでapt-get install imagemagickを実行すると、デフォルトでImageMagick 6.9.11-60がインストールされます。しかし、最新の7系を使いたい場合や、特定のバージョンを指定したい場合は、追加の手順が必要です。
この記事では、私が苦戦したことを記録していきます。
初学者なのでもっと簡単な方法があると思いますが参考にしていただけると嬉しいです。
参考にした記事
色々調べていると,wget
を使うとURLから簡単にファイルをダウンロードできることを知りました。スクリプト内で自動的にファイルを取得できる便利なコマンドラインツールです。
結果的に、事前にwget
をインストールしておき、ImageMagick 7xのバージョンを取得することができました。
Dockerfile
FROM ruby:3.3.6
RUN apt-get update -qq \
&& apt-get install -y ca-certificates curl gnupg wget \
&& wget https://imagemagick.org/download/sample-file.txt \
&& echo "ファイルのダウンロードが完了しました!"
% docker compose bundle
% docker compose up -d
インストールされたか確認していきます。
Before(ImageMagick 6.9.11-60)
docker compose exec web convert -version
Version: ImageMagick 6.9.11-60 Q16 aarch64 2021-01-25 https://imagemagick.org
Copyright: (C) 1999-2021 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC Modules OpenMP(4.5)
Delegates (built-in): bzlib djvu fftw fontconfig freetype heic jbig jng jp2 jpeg lcms lqr ltdl lzma openexr pangocairo png tiff webp wmf x xml zlib
After (ImageMagick 7.1.1-43)
docker compose exec web magick -version
Version: ImageMagick 7.1.1-43 Q16-HDRI aarch64 22550 https://imagemagick.org
Copyright: (C) 1999 ImageMagick Studio LLC
License: https://imagemagick.org/script/license.php
Features: Cipher DPC HDRI Modules OpenMP(4.5)
Delegates (built-in): bzlib djvu fontconfig freetype jbig jng jp2 jpeg lcms lqr ltdl lzma openexr png tiff webp wmf x xml zlib zstd
ImageMagick 7系以降は、magickコマンドが推奨されているため、コマンドを変更しました。バージョンアップに成功し、convertコマンドの非推奨警告も解消されました。
WARNING: The convert command is deprecated in IMv7, use "magick" instead of "convert" or "magick convert"