【docker】docker启动neo4j,并配置内存

注意下:--volume=宿主机目录:/data--publish=宿主机port:7474 --publish=宿主机port:7687

bash 复制代码
docker run -d \
--publish=9801:7474 --publish=9802:7687 \
--env NEO4J_AUTH=neo4j/passwd \
--volume=/opt/docker/data/vol-data/neo4j4.2:/data \
--restart always \
--memory 2G
--name neo4j4.2 neo4j:4.2.9-community

查看容器占用内存

bash 复制代码
docker stats neo4j4.2
# CONTAINER ID   NAME       CPU %     MEM USAGE / LIMIT   MEM %     NET I/O         BLOCK I/O         PIDS
# a3dbc78b8ac2   neo4j4.2   0.34%     395.8MiB / 2GiB     19.33%    738kB / 605kB   80.6MB / 5.77MB   47
bash 复制代码
docker exec -it neo4j4.2 /bin/bash
cd /var/lib/neo4j/conf

cat neo4j.conf

可以看到neo4j的配置文件 neo4j.conf,默认#dbms.memory.heap.initial_size=512m #dbms.memory.heap.max_size=512m 都没有配置。而dbms.memory.pagecache.size=512M已配置

bash 复制代码
# 启动java-heap内存,建议启动和最大设置成一样的。
# Java Heap Size: by default the Java heap size is dynamically calculated based
# on available system resources. Uncomment these lines to set specific initial
# and maximum heap size.
#dbms.memory.heap.initial_size=512m
#dbms.memory.heap.max_size=512m

# neo4j索引从文件系统映射内存。设置内存大小。
# The amount of memory to use for mapping the store files.
# The default page cache memory assumes the machine is dedicated to running
# Neo4j, and is heuristically set to 50% of RAM minus the Java heap size.
#dbms.memory.pagecache.size=10g

# 全局事务内存。所有事务的总内存
# Limit the amount of memory that all of the running transaction can consume.
# By default there is no limit.
#dbms.memory.transaction.global_max_size=256m

# 单个事务的内存。
# Limit the amount of memory that a single transaction can consume.
# By default there is no limit.
#dbms.memory.transaction.max_size=16m

docker 配置文档
neo4j配置官网

修改配置:

bash 复制代码
# 复制到宿主机
 docker cp neo4j4.2:/var/lib/neo4j/conf/neo4j.conf .

# 内容 vim neo4j.conf :
dbms.memory.heap.initial_size=512m
dbms.memory.heap.max_size=512m
dbms.memory.transaction.global_max_size=512m
dbms.memory.pagecache.size=1024M

# 复制回去
docker cp ./neo4j.conf neo4j4.2:/var/lib/neo4j/conf
# check一下
docker exec neo4j4.2 cat /var/lib/neo4j/conf/neo4j.conf | grep memory
# 重启容器
docker restart neo4j4.2

参考文章

如何为 docker 容器设置内存限制?

相关推荐
java_logo2 小时前
Apache Doris Docker 部署指南:实时分析数据库实战
数据库·docker·apache·doris·apache doris·轩辕镜像·docker部署doris
生活爱好者!15 小时前
我把NAS当作下载机,docker一键部署qb
运维·docker·容器
java_logo16 小时前
Docker Compose 部署 ClickHouse:快速搭建高性能列式数据库
数据库·clickhouse·docker·列式数据库·轩辕镜像·高性能数据库·clickhouse部署教程
MC皮蛋侠客16 小时前
uv 系列(七):CI/CD、Docker 与私有索引——生产级交付
python·ci/cd·docker·uv
Hui Baby17 小时前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
用户2333768521819 小时前
Docker 端口"时通时不通"的排查实战
docker
做个文艺程序员19 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
ShiXZ21319 小时前
Redis docker-compose 部署指南
redis·docker·eureka
梦梦代码精21 小时前
基于ThinkPHP6 + Vue3的家政预约系统全解析:从LBS定位到自动派单的完整实现
java·docker·开源·php·代码规范
Zhu7581 天前
在k8s环境部署Apache Superset最新版
容器·kubernetes·apache