【发布时间】:2019-02-19 05:33:09
【问题描述】:
使用 Docker,从 Python 初始化 ArangoDB
尝试了不同的身份验证方式,总是得到“错误:数据库未初始化且未指定密码选项”
不确定如何格式化/连接 ArangoDB
import docker
client=docker.from_env()
img=client.images.pull("arangodb:latest")
[31]:
arangocommand="-e ARANGO_RANDOM_ROOT_PASSWORD=1"
db=client.containers.run(img,command=arangocommand)
---------------------------------------------------------------------------
ContainerError Traceback (most recent call last)
<ipython-input-31-c5425f08f615> in <module>
1 arangocommand="-e ARANGO_RANDOM_ROOT_PASSWORD=1"
2
----> 3 db=client.containers.run(img,command=arangocommand)
~/anaconda3/envs/dockerdb/lib/python3.7/site-packages/docker/models/containers.py in run(self, image, command, stdout, stderr, remove, **kwargs)
793 if exit_status != 0:
794 raise ContainerError(
--> 795 container, exit_status, command, image, out
796 )
797
ContainerError: Command '-e ARANGO_RANDOM_ROOT_PASSWORD=1' in image 'sha256:d41deeeb6f1189a07e3e567bd104c82b53350b67eaadbe044fae9c1158cd8c1c' returned non-zero exit status 1: b'error: database is uninitialized and password option is not specified \n You need to specify one of ARANGO_ROOT_PASSWORD, ARANGO_NO_AUTH and ARANGO_RANDOM_ROOT_PASSWORD\n
'
正在寻找一种简单而可靠的方法来从 Python 连接到 Docker 容器中的 ArangoDB。然后,我怎样才能继续使用 Python 中的 ArangoDB Docker,而不必考虑它是在 Docker 容器中运行的。浏览器
导入 dockerpy
然后继续只使用 dockerpy 库
【问题讨论】: