Dockerfile 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. ARG BASE_IMAGE_VERSION="v3.8.4"
  2. FROM darthsim/imgproxy-base:${BASE_IMAGE_VERSION}
  3. ARG BUILDPLATFORM
  4. ARG TARGETPLATFORM
  5. COPY . .
  6. RUN docker/build.sh
  7. # ==================================================================================================
  8. # Final image
  9. FROM debian:stable-slim
  10. LABEL maintainer="Sergey Alexandrovich <darthsim@gmail.com>"
  11. RUN apt-get update \
  12. && apt-get upgrade -y \
  13. && apt-get install -y --no-install-recommends \
  14. bash \
  15. ca-certificates \
  16. libstdc++6 \
  17. liblzma5 \
  18. libzstd1 \
  19. fontconfig-config \
  20. media-types \
  21. libjemalloc2 \
  22. libtcmalloc-minimal4 \
  23. && ln -s /usr/lib/$(uname -m)-linux-gnu/libjemalloc.so.2 /usr/local/lib/libjemalloc.so \
  24. && ln -s /usr/lib/$(uname -m)-linux-gnu/libtcmalloc_minimal.so.4 /usr/local/lib/libtcmalloc_minimal.so \
  25. && rm -rf /var/lib/apt/lists/*
  26. COPY --from=0 /usr/local/bin/imgproxy /usr/local/bin/
  27. COPY --from=0 /usr/local/lib /usr/local/lib
  28. COPY docker/entrypoint.sh /usr/local/bin/
  29. # AWS Lambda adapter
  30. COPY --from=public.ecr.aws/awsguru/aws-lambda-adapter:0.8.0 /lambda-adapter /opt/extensions/lambda-adapter
  31. COPY NOTICE /usr/local/share/doc/imgproxy/
  32. ENV VIPS_WARNING=0
  33. ENV MALLOC_ARENA_MAX=2
  34. ENV LD_LIBRARY_PATH /usr/local/lib
  35. ENV IMGPROXY_MALLOC malloc
  36. ENV AWS_LWA_READINESS_CHECK_PATH /health
  37. ENV AWS_LWA_INVOKE_MODE response_stream
  38. RUN groupadd -r imgproxy \
  39. && useradd -r -u 999 -g imgproxy imgproxy \
  40. && mkdir -p /var/cache/fontconfig \
  41. && chmod 777 /var/cache/fontconfig
  42. USER 999
  43. ENTRYPOINT [ "entrypoint.sh" ]
  44. CMD ["imgproxy"]
  45. EXPOSE 8080