如何安装和运行 wkhtmltopdf Docker 镜像
Posted
技术标签:
【中文标题】如何安装和运行 wkhtmltopdf Docker 镜像【英文标题】:How to install and run wkhtmltopdf Docker image 【发布时间】:2020-10-16 17:52:26 【问题描述】:当我将构建和运行Spring-boot
应用程序时,我想从Dockerfile
的Dockerfile
应用程序安装和运行wkhtmltopdf。
我在Dockerfile
中编写了以下给定脚本来安装 wkhtmltopdf。
FROM debian:jessie
RUN apt-get update \
&& apt-get install -y \
curl \
libxrender1 \
libfontconfig \
libxtst6 \
xz-utils
RUN curl "https://downloads.wkhtmltopdf.org/0.12/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz" -L -o "wkhtmltopdf.tar.xz"
RUN tar Jxvf wkhtmltopdf.tar.xz
RUN mv wkhtmltox/bin/wkhtmltopdf /usr/local/bin/wkhtmltopdf
ENTRYPOINT ["wkhtmltopdf"]
上述脚本创建了一个 docker 图像,但是如何运行这些图像来测试 wkhtmltopdf 是否工作?或者我们必须从Dockerfile
安装和运行 wkhtmltopdf 的任何其他方法?
【问题讨论】:
【参考方案1】:也许这个解决方案会有所帮助。 wkhtmltopdf 将被安装到 /usr/bin/wkhtmltopdf
RUN apt-get update \
&& apt-get install -y \
...
wkhtmltopdf \
...
【讨论】:
【参考方案2】:另一个简单的答案:
# Create image based on the official openjdk 8-jre-alpine image from the dockerhub
FROM openjdk:8-jre-alpine
# Install wkhtmltopdf
RUN apk add --no-cache wkhtmltopdf
ENTRYPOINT ["wkhtmltopdf"]
【讨论】:
这为我解决了!它将wkhtmltopdf
安装到/usr/local/bin/wkhtmltopdf
。您可以通过 sh
-ing 到您的 Docker 容器并运行 wkhtmltopdf --version
来检查它是否正确安装。【参考方案3】:
# (Multi stage Docker can be considered. The appropriate Gradle cache use remains to be solved)
# Create image based on the official openjdk 11-jre-slim image from the dockerhub
FROM debian:jessie
ENV DIR=/usr/local/bin/
# Change directory so that our commands run inside this new directory
WORKDIR $DIR
ENV WKHTML_VERSION 0.12.4
# Builds the wkhtmltopdf download URL based on version number above
ENV DOWNLOAD_URL "https://downloads.wkhtmltopdf.org/0.12/$WKHTML_VERSION/wkhtmltox-$WKHTML_VERSION_linux-generic-amd64.tar.xz" -L -o "wkhtmltopdf.tar.xz"
# Install dependencies
RUN apt-get update && apt-get install -y \
curl libxrender1 libfontconfig libxtst6 xz-utils
# Download and extract wkhtmltopdf
RUN curl $DOWNLOAD_URL
RUN tar Jxvf wkhtmltopdf.tar.xz
RUN cp wkhtmltox/bin/wkhtmltopdf $DIR
ENTRYPOINT ["wkhtmltopdf"]
【讨论】:
以上是关于如何安装和运行 wkhtmltopdf Docker 镜像的主要内容,如果未能解决你的问题,请参考以下文章
如何在 debian 64 位上正确安装 wkhtmltopdf?
sh 在CentOS 6.x和7.x上安装wkhtmltopdf 0.12.4