gpt4 book ai didi

linux - Docker 在构建时无法找到包 (wkhtmltopdf)

转载 作者:行者123 更新时间:2023-12-04 19:24:13 28 4
gpt4 key购买 nike

编辑

在排除故障时,我遇到了不同的错误:

...
Err:1 http://deb.debian.org/debian bullseye InRelease
Temporary failure resolving 'deb.debian.org'
...

我猜这与我的防火墙设置(nftables)有关运行
docker run busybox nslookup google.com给我
;;连接超时;无法访问服务器,因此 docker 没有与外部的连接?

系统

开发环境:Ubuntu 22.04
产品环境:debian 10.12 64位/Linux 4.19.0-20-amd64

我的节点后端文件夹中的 Dockerfile

FROM node:slim

# Install wkhtmltopdf
RUN apt-get update
RUN apt-get install -y wkhtmltopdf

RUN npm install -g pm2@latest

WORKDIR /var/api

COPY . .

RUN npm i

EXPOSE 10051-10053

# Start PM2 as PID 1 process
ENTRYPOINT ["pm2-runtime"]
CMD ["process.json"]

在我的开发系统(Ubuntu 22.04)上构建此文件时,它工作正常。

但是,将其部署到我的服务器并让它构建,我得到以下输出:

Building backend
Sending build context to Docker daemon 159.2kB
Step 1/10 : FROM node:slim
---> 6c8b32c67190
Step 2/10 : RUN apt-get update
---> Using cache
---> b28ad6ee8ebf
Step 3/10 : RUN apt-get install -y wkhtmltopdf
---> Running in 2f76d2582ac0
Reading package lists...
Building dependency tree...
Reading state information...
E: Unable to locate package wkhtmltopdf
The command '/bin/sh -c apt-get install -y wkhtmltopdf' returned a non-zero code: 100
ERROR: Service 'backend' failed to build : Build failed

我尝试过的

  • 在我的服务器上单独运行 apt-get install -y wkhtmltopdf 可以很好地安装该软件包。
  • /etc/apt/sources.list
    添加了不同的存储库
  • 我知道它的包裹 https://packages.debian.org/buster/wkhtmltopdf (?)
  • 一些问题排查。

最佳答案

根据Docker docs :

Using apt-get update alone in a RUN statement causes caching issues and subsequent apt-get install instructions fail.

因此,对于您的情况,您应该这样做:

RUN apt-get update && apt-get install -y wkhtmltopdf 

而不是:

RUN apt-get update
RUN apt-get install -y wkhtmltopdf

关于linux - Docker 在构建时无法找到包 (wkhtmltopdf),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72632481/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com