附加卷后,docker找不到共享的Python库

问题描述

我基于rocker/r-base:4.0.3创建了一个Docker容器,该容器运行依赖于python模块的R库。在后台,该库使用reticulate::import()导入该库。

运行没有附加卷的容器时,它可以找到我安装在/srv/venv/bin中的Python。但是,当我附加一个卷时,出现以下错误

错误:找不到Python共享库,未加载Python绑定。

是否存在可能导致此问题的码头工人卷行为?还是应该发布Dockerfile的内容以寻求帮助?

未连接音量

docker run --rm -it -p 8888:8888 <my_image> /bin/bash
> reticulate::py_config()
No non-system installation of Python Could be found.
Would you like to download and install Miniconda?
Miniconda is an open source environment management system for Python.
See https://docs.conda.io/en/latest/miniconda.html for more details.

Would you like to install Miniconda? [Y/n]: n
Installation aborted.
python:         /srv/venv/bin/python3
libpython:      /usr/lib/python3.8/config-3.8-x86_64-linux-gnu/libpython3.8.so
pythonhome:     //usr://usr
version:        3.8.6 (default,Sep 25 2020,09:36:53)  [GCC 10.2.0]
numpy:          /srv/venv/lib/python3.8/site-packages/numpy
numpy_version:  1.19.2

python versions found: 
 /srv/venv/bin/python3
 /usr/bin/python3

已连接音量

docker run --rm -it -p 8888:8888 -v $(pwd):/home/docker <my_image> /bin/bash
> reticulate::py_config()
Error: Python shared library not found,Python bindings not loaded.
Use reticulate::install_miniconda() if you'd like to install a Miniconda Python environment.

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)