我想使用puppeteer
进行截图,然后使用docker将项目打包成镜像,但运行镜像时报这个错:
我已经执行过它
yum install pango.x86_64 libXcomposite.x86_64 libXcursor.x86_64 libXdamage.x86_64 libXext.x86_64 libXi.x86_64 libXtst.x86_64 cups-libs.x86_64 libXScrnSaver.x86_64 libXrandr.x86_64 GConf2.x86_64 alsa-lib.x86_64 atk.x86_64 gtk3.x86_64 -y
Dockerfile文件:
截图逻辑:
请问大佬们有遇到过吗?麻烦指点下
执行locate libgobject-2.0.so
:
这个是否说明已安装。如果没有安装,请问如何下载libglib
,因为我用yum
下载不下来
如果说明已安装,我在Dockerfile加入了命令:
但是我重新打包镜像运行,结果依然是报错,报错信息没有变
你把它放到 node 前看看。比如 RUN LD_LIBRARY_PATH=/usr/lib64:$LD_LIBRARY_PATH node node_modules/.... 尝试后的结果:
看你 Dockerfile
文件中,并没有安装报错行所提到的依赖库 libgobject
。
经查询 node:slim
的上层是基于 debian
,故查询到的库:
https://packages.debian.org/search?suite=buster&arch=i386&mod...
你定位一下是否已安装此库
locate libgobject-2.0.so
若已存在,显示,比如
/usr/lib/x86_64-linux-gnu/libgobject-2.0.a/usr/lib/x86_64-linux-gnu/libgobject-2.0.so/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0/usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.4800.2
可以
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH# 即在 Dockerfile 中添加此环境变量,如RUN export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
若不存在,则按上面所给出的 debian 库链接,安装对应系统版本的依赖库libglib
。再重复上述步骤。
经测,确实为 debian
源镜像。
在 RUN node ...
上一行添加下述内容:
RUN apt update && apt install libglib2.0-0
若还不行,则需要更新 db
,即在上一行添加下述内容:
RUN apt install locate && updatedb
若还不行,则按我之前所说的,再加一行:
RUN export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
或者像另一个答案的,加在 node
前:
RUN LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH node ...
尝试四次看看:
另外,建议下次直接贴 Dockerfile
内容。
vue3+vite打包的时候,报错Access is denied,请问怎么解决啊?重新装了node_modules包,用nvm试了npm的几个版本都不行
使用dockerfile打包太麻烦了!比如我想自己搭建一套php的开发环境,做成镜像,以后随时可用。并且我习惯使用堡塔作为面板工具。如果使用dockerfile的化,成本就太高了。 使用commit或者import/export的方式会导致镜像非常大! 是否有其他高效的打包方式可以,将容器打包成镜像?
打开网址报错403 Forbidden,请问怎么解决?防火墙和代理都已经关闭
本文向大家介绍详解Docker 容器基础系统镜像打包,包括了详解Docker 容器基础系统镜像打包的使用技巧和注意事项,需要的朋友参考一下 因为容器本身是共享宿主操作系统内核,所以容器基础系统镜像包本身就是一个标准的 Linux rootfs + 用户自定义的工具。根据这个思路,我们就可以构建一个自己的容器基础系统镜像。 构建标准的 Linux rootfs 的方式有很多种方法,Redhat、De
[cordova] [cordova] FAILURE: Build failed with an exception. [cordova] [cordova] * What went wrong: [cordova] A problem occurred configuring project ':CordovaLib'. [cordova] > Could not resolve all ar
json 解析 json.loads() 报错,求高手帮助