개발/GO
[Dockerfile] golang에서 imagemagick v3 사용하기
피클s
2022. 8. 16. 11:44
imagemagick은go get gopkg.in/gographics/imagick.v3 만 해서는 사용할 수 없다.
실행환경에 imagemagick이 설치되어 있어야 한다. (참고: https://github.com/gographics/imagick#install)
때문에 도커 환경을 구축하려면 imagemagick을 설치하는 과정이 필요하다.
공식 예제는 v2버전 이기 때문에 v3버전의 도커파일을 기록한다.
FROM golang:1.18-alpine
ENV IMAGEMAGICK_VERSION=7.1.0-45
RUN apk add --no-cache git gcc libc-dev imagemagick make
RUN cd && \
wget https://github.com/ImageMagick/ImageMagick/archive/${IMAGEMAGICK_VERSION}.tar.gz && \
tar xvzf ${IMAGEMAGICK_VERSION}.tar.gz && \
cd ImageMagick* && \
./configure \
--without-magick-plus-plus \
--without-perl \
--disable-openmp \
--with-gvc=no \
--disable-docs && \
make -j$(nproc) && make install && \
ldconfig /usr/local/lib
WORKDIR /usr/src/app
COPY . .
RUN go build -gcflags "all=-N -l" -o ./tmp/app
CMD ./app