mongo: error while loading shared libraries: libcrypto.so.10: cannot open shared object file: No such file or directory

自己构建的docker mongodb,启动失败

 

 查看缺少文件

#ldd /data/usr/mongodb/bin/mongod

 

 

docker的 /lib64 目录下少了文件:libcrypto.so.10libssl.so.10 

 

查看宿主机:

#ll /lib64/libcrypto.so.1*

#ll /lib64/libssl.so*

 发现libcrypto.so.10是软连接,真正的文件是libcrypto.so.1.0.2k 

在容器中查找libcrypto.so.1.0.2k ,也是没有的。如果有libcrypto.so.1.0.2k 则在容器中创建软连接就可以了

 

复制文件到当前目录。

#懒得复制原名再创建软连接了,直接复制成新的名称

#cp /lib64/libcrypto.so.1.0.2k libcrypto.so.10

#cp /lib64/llibssl.so.1.0.2k libssl.so.10

 

 

 

方法一:

将缺少的两个文件上传到docker的/lib64目录下

 #docker cp libcrypto.so.10 容器名:/lib64

 #docker cp libssl.so.10 容器名:/lib64

 

 方法二:

可以重构镜像

#vi Dockerfile

 

 #docker build -t centos:mongo .

 

posted @   leihongnu  阅读(7604)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
历史上的今天:
2021-04-28 sudo user1账号获得管理员root的权限
点击右上角即可分享
微信分享提示