PandocをDockerで使う。 - 地平線まで行ってくる。

地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

PandocをDockerで使う。

ドキュメント変換ツールとしてPandocは非常に便利だ。LLMとの組み合わせではmarkdown形式で文章を生成させておいて、パワーポイントにしたりするという使い方は便利すぎる。環境構築が意外とメンドイのでdockerを利用して、どこでも使える様にしておきたい。

 

いい記事を探すとこちらが見つかりました。ありがとうございます。

mickey-happygolucky.hatenablog.com

 

このままでは、動かなくなっちゃっているので、最近の事情に合わせて細かいところを変更しました。

Dockerfile

FROM pandoc/core

RUN apk add --no-cache \
    graphviz \
    openjdk11 \
    python3 \
    py3-pip \
    font-droid \
    font-droid-nonlatin \
    pipx

ARG plantuml_version="1.2024.5"
RUN wget https://github.com/plantuml/plantuml/releases/download/v${plantuml_version}/plantuml-${plantuml_version}.jar -O /opt/plantuml.jar

RUN pipx install pandoc-plantuml-filter

ENV PLANTUML_BIN="java -jar /opt/plantuml.jar"

ENTRYPOINT [ "/usr/local/bin/pandoc" ]

あとは、記事と同じようにビルド。

docker build . -t mypandoc

 

パワーポイント変換も問題なし。

#!/bin/bash

docker run --rm \
       -i \
       --volume "$(pwd):/data" \
       --user $(id -u):$(id -g) \
       mypandoc \
       -s \
       -o work.pptx

 

これまでLLMからPandocの流れもチャレンジしていきます。

 

Marpも便利そう。こちらはDockerが用意されている。