未找到Docker Alpine Latext texmf dist样式
我正在尝试向未找到Docker Alpine Latext texmf dist样式,docker,latex,pandoc,alpine,Docker,Latex,Pandoc,Alpine,我正在尝试向pandoc/latexdocker容器(它本身是在Alpine上构建的)添加一些必要的latext样式文件,而底层的latext到pdf转换无法找到我添加的一些样式文件。这是我的Dockerfile,它添加了我需要的包 FROM pandoc/latex:latest RUN apk --no-cache add texlive-xetex texmf-dist-pictures texmf-dist-latexextra poppler-utils && texh
pandoc/latex
docker容器(它本身是在Alpine上构建的)添加一些必要的latext样式文件,而底层的latext到pdf转换无法找到我添加的一些样式文件。这是我的Dockerfile,它添加了我需要的包
FROM pandoc/latex:latest
RUN apk --no-cache add texlive-xetex texmf-dist-pictures texmf-dist-latexextra poppler-utils && texhash
我可以看到我需要的样式文件已安装
$ docker run --rm -it --entrypoint /bin/sh -v $PWD:/data mypandoc:latest
/data # find / -name tikzpagenodes.sty
/usr/share/texmf-dist/tex/latex/tikzpagenodes/tikzpagenodes.sty
但是,当我尝试进行实际构建时,会出现以下错误
Error producing PDF.
! LaTeX Error: File `tikzpagenodes.sty' not found.
Type X to quit or <RETURN> to proceed,
or enter new name. (Default extension: sty)
Enter file name:
! Emergency stop.
<read *>
l.103 \usepackage
生成PDF时出错。
! LaTeX错误:找不到文件“tikzpagenodes.sty”。
键入X退出或继续,
或者输入新名称。(默认扩展名:sty)
输入文件名:
! 紧急停止。
l、 103\n使用软件包
我曾希望在容器构建中调用
texhash
可以解决这个问题,但事实并非如此。将texmf dist
目录放入搜索路径有什么诀窍吗?问题似乎出在我从texmf dist
添加的所有样式上,而不仅仅是这一个。谢谢。使用TeXLive的tlmgr
安装更多软件包。pandoc/latex
Docker容器不使用Alpine提供的TeX安装,以便为用户提供更大的灵活性并减小图像大小–Alpine软件包的粒度要小得多
通常,会将以下内容添加到Dockerfile中
# Install additional LaTeX packages
RUN tlmgr update --self && tlmgr install \
pgf # <list of packages goes here>
#安装其他LaTeX软件包
运行tlmgr更新--self&&tlmgr安装\
pgf#
或者,您可以使用
pandoc/core
图像,使用Alpine系统包构建您自己的乳胶容器。您是否考虑过继续询问?谢谢。使用tlmgr
而不是Alpine包最终解决了这个问题。事实证明,这些包安装到与容器中latex安装不同的位置。