我想从我的工作目录生成带有docker文件的pdf,其中包含texlive
/***Dockerfile***/
FROM alpine
RUN sed -i -e 's/v3\.4/edge/g' /etc/apk/repositories
RUN echo 'http://dl-cdn.alpinelinux.org/alpine/edge/testing' >> /etc/apk/repositories
RUN apk update\
&& apk add texlive-full
WORKDIR ./mountvolume
/**Build Image**/
docker build -t texlive .
Docker Image的工作方式与expectetd类似,但是当尝试
时docker run -v $PWD:/mountvolume texlive /bin/sh -c 'pdflatex article.tex'
我收到错误:
This is pdfTeX, Version 3.14159265-2.6-1.40.17 (TeX Live 2016/Alpine Linux) (preloaded format=pdflatex)
restricted \write18 enabled.
kpathsea: Running mktexfmt pdflatex.fmt
Can't locate mktexlsr.pl in @INC (@INC contains: /usr/share/tlpkg /usr/share/texmf-dist/scripts/texlive /usr/local/lib/perl5/site_perl /usr/local/share/perl5/site_perl /usr/lib/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/core_perl /usr/share/perl5/core_perl .) at /usr/bin/mktexfmt line 23.
BEGIN failed--compilation aborted at /usr/bin/mktexfmt line 25.
我无法找到格式文件pdflatex.fmt
!
答案 0 :(得分:2)
你的Dockerfile需要更复杂一点:见issue 4514
看起来texlive包不足以获得功能齐全的TeX系统(2015:
fmtutil.pl
depends onmktexlsr.pl
)texlive长期以来一直在测试回购 但它缺少一些东西,最重要的是
texlive-texmf
。 如果你想今天使用texlive,你必须安装测试包,下载texlive-20160523b-texmf.tar.xz,将内容复制到/ usr / share / texmf-dist并重新安装测试包。
可是:
高山需要的是包装texlive-texmf 但是没有任何高级Linux开发人员已经研究过这个