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 @ 2022-04-28 13:21  leihongnu  阅读(7165)  评论(0编辑  收藏  举报