泊坞窗内的本地主机 - neo4j
问题描述:
我想创建一个dockerfile,它建立一个neo4j实例。目前,我有以下几点:泊坞窗内的本地主机 - neo4j
FROM neo4j:3.0
MAINTAINER Andy
CMD curl \
-H "Content-Type: application/json" \
-X POST -d '{"password":"mypassword"}' \
-u neo4j:neo4j http://localhost:7474/user/neo4j/password
从这里,然后我建立的形象和运行使用下面的命令
docker run -p 7474:7474 myimage
虽然我能够在localhost:4747
访问我的主机上的Neo4j的面板,打算在容器中运行的curl命令无法访问它自己的本地主机实例。
所以我想我的问题是,我正确地做到这一点,以及如何从容器内调用localhost?
为了澄清,我不想让curl请求逃离容器 - 它应该与容器内部的neo4j进行通信。
答
也许你想使用环境变量$NEO4J_AUTH
控制认证如解释here。
例如,这禁用认证
docker run -p 7474:7474 -e NEO4J_AUTH=none -d neo4j:3.0
您可能还需要检查泊坞窗neo4j:3.0
图像的entrypoint script,这样就可以使你自己的版本,如果给出的选项是不够的,你。
答
事实证明,我设置密码的方法相当冗长。在Dockerfile寻找Neo4j的图像后,我发现,设置密码,只要求我改变环境变量NEO4J_AUTH像这样:
FROM neo4j:3.0
MAINTAINER Andy
ENV NEO4J_AUTH neo4j/password
谢谢,这原来是解决方案,我在路上了解到dockerfiles – Andy