标签: neo4j

在 Neo4j 中使用 LetsEncrypt 证书

如何将 LetsEncrypt 生成的证书文件与 Neo4j 实例一起使用?LetsEncrypt 生成的文件是:

  • 证书文件
  • 链表
  • fullchain.pem
  • 私钥文件

到目前为止,我已经尝试通过 OpenSSL进行转换,但没有成功,使用从 PEM 到 DER 的转换。Neo4j 抱怨在启动时找不到证书。问题是如何将 LetsEncrypt 证书转换为 Neo4j 可以使用的东西。

设置细节:

  • 证书/var/lib/neo4j/certificates/以名称neo4j.{cert,key}、权限600、归neo4j:nogroup. 所有这些似乎都是根据文档
  • 在配置中,我用这一行来指定证书路径: dbms.directories.certificates=/var/lib/neo4j/certificates
  • 在配置中,我还启用了通过 HTTPS 的远程访问: dbms.connector.https.address=0.0.0.0:7473

重新启动 Neo4j 时,我收到以下错误消息:

WARN  Illegal character 0x16 in state=START for buffer HeapByteBuffer@5a260174[p=1,l=193,c=8192,r=192]={\x16<<< SEVERAL_LINES_OF_HEX_JIBBERISH_HERE }
WARN  badMessage: 400 Illegal character 0x16 for HttpChannelOverHttp@5d682358{r=0,c=false,a=IDLE,uri=-}
Run Code Online (Sandbox Code Playgroud)

openssl ssl-certificate neo4j lets-encrypt

8
推荐指数
1
解决办法
1304
查看次数

如何在 Docker 容器中执行 Neo4j 数据库的转储?

Neo4j 的 docker 容器根据文档启动并使用以下命令正常工作:

$ docker run \
    --detach \
    --publish=7474:7474 \
    --publish=7473:7473 \
    --publish=7687:7687 \
    --volume=$HOME/neo4j/data:/data \
    --volume=$HOME/neo4j/logs:/logs \
    --volume=$HOME/neo4j/ssl:/ssl \
    --ulimit=nofile=40000:40000 \
    --name=myname-neo4j \
    neo4j:3.1.1
Run Code Online (Sandbox Code Playgroud)

当我尝试执行neo4j-admin数据库转储时,出现错误:

$ docker exec -ti myname-neo4j bin/neo4j-admin dump --database=graph.db --to=/home/name/myname.dump
command failed: the database is in use -- stop Neo4j and try again
Run Code Online (Sandbox Code Playgroud)

但是,如果 Neo4j 进程停止(这似乎是释放数据库的唯一方法),容器将关闭。这似乎是 Docker 的预期行为。因此,neo4j-admin dump在没有使用数据库的情况下,从容器内部调用似乎是不可能的。

在仍然使用 Docker 的同时如何解决这个问题?

neo4j docker

8
推荐指数
1
解决办法
9024
查看次数

标签 统计

neo4j ×2

docker ×1

lets-encrypt ×1

openssl ×1

ssl-certificate ×1