我正在创建一个映像,需要将其部署在 docker 容器中。我的项目中依赖 Inkscape 将 svg 转换为 png 。我需要更新我的 docker 文件,因为我需要添加以下命令。
RUN APT-GET UPDATE && APT-GET INSTALL INKSCAPE
我使用 python:3.10 作为基本图像链接我的基本图像。它是否支持安装上述包或者我需要更改它。 Chat Gpt 说我需要改变,另一方面 bard.google.com 说它将支持..
答案1
确定给定的基础映像是否可以提供特定的包需要最新信息,因此不能依赖 LLM 提供准确的答案。
要找到答案,最好是验证它:
$ docker run -it --rm python:3.10
# apt-get update && apt-get -y install --no-install-recommends inkscape
这样下载并安装 Inkscape 时不会出现错误,所以是的,python:3.10
确实使 Inkscape 可供安装。在容器描述符中,您可以通过添加来安装它
RUN apt-get update && apt-get -y install --no-install-recommends inkscape
答案2
python:3.10
默认情况下未安装基础映像inkscape
。要使用inkscape
, based on来创建 Docker 映像python:3.10
,您将使用包含以下语句的 Dockerfile
FROM python:3.10
RUN apt-get update && apt-get install --assume-yes --no-install-recommends inkscape
请注意,关键字后面的字符串RUN
是 Unix shell 命令,因此大小写很重要。
答案3
我的项目中依赖 Inkscape 将 svg 转换为 png
不需要Inkscape svg
。png
FROM python:3.10
RUN apt-get update && apt-get install -y imagemagick
并在容器中:
convert -size 1024x1024 test.svg test.png
或者
FROM python:3.10
RUN apt-get update && apt-get install -y inkscape
并在容器中:
inkscape -w 1024 -h 1024 input.svg -o output.png