Debian:ヘッドレスモードでdocxファイルをpdfに変換する最小LibreOfficeパッケージ

Debian:ヘッドレスモードでdocxファイルをpdfに変換する最小LibreOfficeパッケージ

私は、ヘッドレスモードでLibreOffice(soffice)を使用してdocxファイルをpdfに変換するDebian 10の基本イメージ(固定依存関係)を持つDockerコンテナを開発しています。

次のパッケージをインストールしました。

libreoffice default-jre-headless libreoffice-java-common

ただし、ビルド後のDockerコンテナのサイズは1GBを超えます。理想的には、コンテナができるだけ小さくなればと思います。ヘッドレスモードでsofficeを実行し、docxファイルをpdfに変換するための最小パッケージ要件を見つける方法はありますか?

ベストアンサー1

これに対する正式なサポートはないようです。 Docker / Kubernetesを使用して同じ問題に直面し、次の方法で正常に解決しました。この場合、LibreOffice v7.5。

  • 以下からdebパッケージをダウンロードしてください。https://de.libreoffice.org/download/download
  • 解凍すると、約40〜50個のdebファイルが生成されます。
  • いくつかの試行錯誤を経てサーバー側でDOCXをPDFに変換するには、次のdebファイルセットが必要であることがわかりました。
    libobasis7.5-en-us_7.5.4.2-2_amd64.deb
    libobasis7.5-images_7.5.4.2-2_amd64.deb
    libobasis7.5-ooofonts_7.5.4.2-2_amd64.deb
    libobasis7.5-writer_7.5.4.2-2_amd64.deb
    libreoffice7.5-ure_7.5.4.2-2_amd64.deb
    libreoffice7.5-writer_7.5.4.2-2_amd64.deb
    libreoffice7.5_7.5.4.2-2_amd64.deb
  • これらの deb を別のディレクトリに配置し、次のようにインストールします。 dpkg -i *.deb

  • 直接変換テスト:

    /opt/libreoffice7.5/program/soffice --headless --convert-to pdf ./demo.docx --outdir ./

  • デーモンを実行します。

    /opt/libreoffice7.5/program/soffice --headless --accept=socket,host="127.0.0.1,port=8100\;urp;" &

  • より自動化された方法のために、上記のdebファイルのリストを再パッケージ化し、DOCKERFILEを介してデプロイしてインストールしました。

おすすめ記事