【问题标题】:Laradock install PDFtkLaradock 安装 PDFtk
【发布时间】:2021-09-10 10:15:59
【问题描述】:

我正在尝试为 laradock(php-fpm 和工作区)安装 pdftk,但在 Ubuntu 20.04 中找不到 pdftk。所以我尝试新建一个容器,但是不知道如何从其他容器中调用它,比如php-fpm和workspace。

# Dockerfile
FROM ubuntu:16.04

USER root

ARG TOP_LEVEL_DIR="pdftk"

RUN apt-get update && \
    apt-get -y install \
        pdftk && \
    mkdir -p /${TOP_LEVEL_DIR}

WORKDIR /var/www
ENTRYPOINT ["/usr/bin/pdftk"]
CMD [ "/bin/bash" ]
# docker-composer.yml

### pdftk ###############################################
    pdftk:
      image: pdftk
      container_name: pdftk
      build:
        context: ./pdftk
      volumes:
          - ${PWD}:/pdftk
          - /var/run/docker.sock:/var/run/docker.sock
      tty: true
      depends_on:
        - workspace
      networks:
        - backend

非常感谢

【问题讨论】:

    标签: docker pdftk laradock


    【解决方案1】:

    你应该为php-fpm定义音量- /var/run/docker.sock:/var/run/docker.sock,而不是为pdftk,同时,你最好定义音量- /usr/bin/docker:/usr/bin/docker

    然后在您的php-fpm 中,您可以使用docker exec -it php-fpm /usr/bin/pdftk 调用pdftk

    补充一下,pdftk实际上确实存在于ubuntu:20.04中,请再检查一下。

    Dockerfile:

    FROM ubuntu:20.04
    RUN apt-get update && apt-get -y install pdftk
    

    执行:

    $ docker build -t abc:1 .
    Setting up pdftk-java (3.0.9-1) ...
    update-alternatives: using /usr/bin/pdftk.pdftk-java to provide /usr/bin/pdftk (pdftk) in auto mode
    update-alternatives: warning: skip creation of /usr/share/man/man1/pdftk.1.gz because associated file /usr/share/man/man1/pdftk.pdftk-java.1.gz (of link group pdftk) doesn't exist
    Setting up pdftk (2.02-5) ...
    Processing triggers for libc-bin (2.31-0ubuntu9.2) ...
    Processing triggers for ca-certificates (20210119~20.04.1) ...
    Updating certificates in /etc/ssl/certs...
    0 added, 0 removed; done.
    $ docker run --rm -it abc:1 pdftk --version
    pdftk port to java 3.0.9 a Handy Tool for Manipulating PDF Documents
    Copyright (c) 2017-2018 Marc Vinyals - https://gitlab.com/pdftk-java/pdftk
    Copyright (c) 2003-2013 Steward and Lee, LLC.
    pdftk includes a modified version of the iText library.
    Copyright (c) 1999-2009 Bruno Lowagie, Paulo Soares, et al.
    This is free software; see the source code for copying conditions. There is
    NO warranty, not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
    

    【讨论】:

    • 您节省了我几天的测试和搜索时间...在 php-fpmworkspace 容器上安装可以正常工作,但在运行 apt install 之前,我需要运行 mkdir -p /usr/share/man/man1 以防止错误“已安装 openjdk-11-jre-headless:amd64 包安装后脚本子进程返回错误退出状态 2”。
    猜你喜欢
    • 2017-08-28
    • 1970-01-01
    • 2018-12-01
    • 2021-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-22
    相关资源
    最近更新 更多