我想在基于 Python 的官方映像python:2.7.9-wheezy的 Docker 容器中打开一个搁置。但我收到一个导入错误。
syncer/util.py:19: in get_from_shelve
db = shelve.open(conf.SHELVE_LOCATION)
/usr/local/lib/python2.7/shelve.py:239: in open
return DbfilenameShelf(filename, flag, protocol, writeback)
/usr/local/lib/python2.7/shelve.py:223: in __init__
Shelf.__init__(self, anydbm.open(filename, flag), protocol, writeback)
/usr/local/lib/python2.7/anydbm.py:84: in open
mod = __import__(result)
/usr/local/lib/python2.7/dbhash.py:7: in <module>
import bsddb
...
E ImportError: No module named _bsddb
在我的主机上,问题不存在并且_bsddb
位于
/usr/lib/python2.7/lib-dynload/_bsddb.so
. 这个文件在我的 Docker 容器中也有,所以我不明白为什么不能导入。
Ignacio Vazquez-Abrams建议 install db4-devel
,但我的容器中没有这个包。
如何打开 Docker 容器中的搁置?