【Docker】Neo4j 容器化部署

Neo4j环境标准软件基于Bitnami neo4j 构建。当前版本为5.17.0

你可以通过轻云UC部署工具直接安装部署,也可以手动按如下文档操作,该项目已经全面开源,可以从如下环境获取
配置文件地址: https://gitee.com/qingplus/qingcloud-platform

QingHub部署

什么是 Neo4j?

Neo4j 是一种高性能图形存储,具有成熟且强大的数据库所需的所有功能,例如友好的查询语言和 ACID 事务。

Overview of Neo4j
该软件列表由 Bitnami 打包。产品中提到的各个商标归各自公司所有,使用它们并不意味着任何隶属关系或认可。

示例

docker run --name neo4j bitnami/neo4j:latest

您可以在环境变量部分找到默认凭据和可用的配置选项。

Persisting your application

如果删除容器,所有数据和配置都将丢失,并且下次运行映像时,数据库将重新初始化。为了避免这种数据丢失,您应该mount一个即使在容器被删除后仍然存在的卷。

为了持久化,您应该在路径上安装一个卷/bitnami。上面的示例定义了一个 docker 卷,即neo4j_data. 只要不删除该卷,Neo4j 应用程序状态就会持续存在。

docker run -v /path/to/neo4j-persistence:/bitnami bitnami/neo4j:latest

docker-compose:

neo4j:
  ...
  volumes:
    - /path/to/neo4j-persistence:/bitnami
  ...

NOTE: 由于这是一个非根容器,因此安装的文件和目录必须具有 UID 的适当权限1001。

配置

环境变量

可定制的环境变量
Name Description Default Value
NEO4J_BIND_ADDRESS Neo4j绑定地址 0.0.0.0
NEO4J_ALLOW_UPGRADE 允许自动架构升级 true
NEO4J_PASSWORD Neo4j 密码。 bitnami1
NEO4J_APOC_IMPORT_FILE_ENABLED 允许使用 apoc 库导入文件 true
NEO4J_APOC_IMPORT_FILE_USE_NEO4J_CONFIG 将 neo4j 配置与 apoc 库结合使用 false
NEO4J_BOLT_PORT_NUMBER 用于 Bolt 协议的端口。 7687
NEO4J_HTTP_PORT_NUMBER 用于http协议的端口。 7474
NEO4J_HTTPS_PORT_NUMBER 用于 https 协议的端口。 7473
只读环境变量
Name Description Value
NEO4J_BASE_DIR Neo4j 安装目录。 ${BITNAMI_ROOT_DIR}/neo4j
NEO4J_VOLUME_DIR Neo4j 卷目录。 /bitnami/neo4j
NEO4J_DATA_DIR NNeo4j 卷目录。 $NEO4J_VOLUME_DIR/data
NEO4J_TMP_DIR Neo4j 临时目录。 ${NEO4J_BASE_DIR}/run
NEO4J_LOGS_DIR Neo4j 日志目录。 ${NEO4J_BASE_DIR}/logs
NEO4J_LOG_FILE Neo4j 日志文件。 ${NEO4J_LOGS_DIR}/neo4j.log
NEO4J_PID_FILE Neo4j PID 文件。 ${NEO4J_TMP_DIR}/neo4j.pid
NEO4J_CONF_DIR Neo4j 的配置目录。 ${NEO4J_BASE_DIR}/conf
NEO4J_PLUGINS_DIR Neo4j 的插件目录。 ${NEO4J_BASE_DIR}/plugins
NEO4J_METRICS_DIR Neo4j 的指标目录。 ${NEO4J_VOLUME_DIR}/metrics
NEO4J_CERTIFICATES_DIR Neo4j 的证书目录。 ${NEO4J_VOLUME_DIR}/certificates
NEO4J_IMPORT_DIR Neo4j 的导入目录。 ${NEO4J_VOLUME_DIR}/import
NEO4J_MOUNTED_CONF_DIR Neo4j 的已安装配置目录。 ${NEO4J_VOLUME_DIR}/conf/
NEO4J_MOUNTED_PLUGINS_DIR 已安装 Neo4j 的插件目录。 ${NEO4J_VOLUME_DIR}/plugins/
NEO4J_INITSCRIPTS_DIR neo4j 初始化脚本目录的路径 /docker-entrypoint-initdb.d
NEO4J_CONF_FILE Neo4j 的配置文件。 ${NEO4J_CONF_DIR}/neo4j.conf
NEO4J_APOC_CONF_FILE Neo4j 的配置文件。 ${NEO4J_CONF_DIR}/apoc.conf
NEO4J_VOLUME_DIR 用于安装配置文件的 Neo4j 目录。 ${BITNAMI_VOLUME_DIR}/neo4j
NEO4J_DATA_TO_PERSIST Neo4j 数据要持久保存。 data
NEO4J_DAEMON_USER Neo4j 系统用户。 neo4j
NEO4J_DAEMON_GROUP Neo4j 系统组。 neo4j
JAVA_HOME Java 安装文件夹。 ${BITNAMI_ROOT_DIR}/java

当您启动 neo4j 映像时,您可以通过在 docker-compose 文件或命令行上传递一个或多个环境变量来调整实例的配置docker run。

使用 Docker Compose 指定环境变量
neo4j:
  ...
  environment:
    - NEO4J_BOLT_PORT_NUMBER=7777
  ...
在 Docker 命令行上指定环境变量
docker run -d -e NEO4J_BOLT_PORT_NUMBER=7777 --name neo4j bitnami/neo4j:latest

使用 Neo4j 配置文件

为了加载您自己的配置文件,您必须使它们可供容器使用。您可以在/bitnami/neo4j/conf.

使用 Docker 组合
neo4j:
  ...
  volumes:
    - '/local/path/to/your/confDir:/bitnami/neo4j/conf'
  ...

添加额外的 Neo4j 插件

为了添加额外的插件,您必须使它们可供容器使用。您可以在/bitnami/neo4j/plugins.

使用 Docker Compose 添加插件
neo4j:
  ...
  volumes:
    - '/local/path/to/your/plugins:/bitnami/neo4j/plugins'
  ...

日志

Bitnami neo4j Docker 映像将容器日志发送到stdout. 要查看日志:

docker logs neo4j

or using Docker Compose:

docker-compose logs neo4j

如果您希望以不同方式使用容器日志,您可以使用该选项配置容器日志记录驱动程序。–log-driver在默认配置中,docker 使用json-file驱动程序。

相关推荐

  1. 【Docker】Neo4j 容器部署

    2024-03-11 10:32:02       49 阅读
  2. 容器部署

    2024-03-11 10:32:02       29 阅读
  3. docker部署neo4j

    2024-03-11 10:32:02       26 阅读
  4. (1)mysql容器部署

    2024-03-11 10:32:02       47 阅读
  5. 【Docker】apache 容器部署

    2024-03-11 10:32:02       49 阅读
  6. 【Docker】Nginx 容器部署

    2024-03-11 10:32:02       43 阅读
  7. 【Docker】Tensorflow 容器部署

    2024-03-11 10:32:02       42 阅读
  8. 【Docker】PostgreSQL 容器部署

    2024-03-11 10:32:02       81 阅读
  9. 【Docker】Memcached 容器部署

    2024-03-11 10:32:02       44 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-11 10:32:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-11 10:32:02       100 阅读
  3. 在Django里面运行非项目文件

    2024-03-11 10:32:02       82 阅读
  4. Python语言-面向对象

    2024-03-11 10:32:02       91 阅读

热门阅读

  1. 机器学习的要素及步骤

    2024-03-11 10:32:02       41 阅读
  2. 【Linux的网络编程】

    2024-03-11 10:32:02       41 阅读
  3. leetcode 第388场周赛第二题

    2024-03-11 10:32:02       43 阅读
  4. 【二分算法】借教室

    2024-03-11 10:32:02       42 阅读
  5. 【C/C++ 学习笔记】指针

    2024-03-11 10:32:02       48 阅读
  6. 为什么传奇服务器经常被攻击?

    2024-03-11 10:32:02       36 阅读
  7. AcWing 1227. 分巧克力

    2024-03-11 10:32:02       40 阅读
  8. C++ 栈OJ

    C++ 栈OJ

    2024-03-11 10:32:02      44 阅读
  9. 卷积神经网络

    2024-03-11 10:32:02       44 阅读
  10. git pull 跟 git pull origin master的区别

    2024-03-11 10:32:02       39 阅读
  11. 佛祖保佑,永不宕机,永无BUG

    2024-03-11 10:32:02       44 阅读
  12. BUG:Enigma Virtual Box打包.net独立程序不正常

    2024-03-11 10:32:02       42 阅读