文章

docker - 图形数据库neo4j的安装

docker - 图形数据库neo4j的安装

背景

尝试安装一下图形数据库(neo4j),然而并不想在本地安装JDK,所以采用了容器方案。

在安装docker和拉取镜像时,总timeout,可能与国内数据安全控制有关系。

知识无国界,那国内肯定也有各种镜像源支持。

目的

  1. 在Linux系统上安装docker,能顺利正常安装成功。
  2. 使用docker拉取一次镜像,便于本地随时创建container来学习用。
  3. 启动一个neo4j的容器,可以链接并自己学习使用。

行动

机器:centos7,4c32G

安装docker

1
2
3
4
5
6
7
8
9
10
11
12
# 添加国内yum镜像源
yum-config-manager --add-repo   http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 安装基础库,可以参考官方教程
yum install -y yum-utils

# 安装docker服务
yum install docker-ce docker-ce-cli containerd.io 

# 如果有超时,可以尝试下面命令,重新获取源信息,我曾在fadora上面安装出现过timeout。
# 后来修改了repo文件,没有执行刷新源缓存,导致未生效。
#yum makecache && yum -y update

获取容器镜像-neo4j:5.26.2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
docker pull neo4j:5.26.2

## 出现了超时,显示xx.docker.io 访问超时链接失败。
## 添加docker镜像源
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": [
  	"https://mirror.ccs.tencentyun.com",
	  "https://mirrors.huaweicloud.com",
    "https://hub-mirror.c.163.com",
	  "https://docker.m.daocloud.io",
    "https://mirrors.ustc.edu.cn",
	  "https://docker.mirrors.ustc.edu.cn"
  ]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
## 还可以把自己的阿里云的地址填写进去。

启动一个neo4j容器服务

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
## 创建本地的映射数据卷目录,数据不因container的删除而丢失
mkdir -p /data/neo4j/data
mkdir -p /data/neo4j/logs
mkdir -p /data/neo4j/conf
mkdir -p /data/neo4j/import
mkdir -p /data/neo4j/plugins
chmod -R 777 /data/neo4j/

# 启动一个容器服务
# NEO4J_AUTH 是创建一个neo4j账户,密码是:zxcvbnm1
docker run -it -d -p 7474:7474 -p 7687:7687 \
-v /data/neo4j/data:/data \
-v /data/neo4j/logs:/logs \
-v /data/neo4j/conf:/var/lib/neo4j/conf \
-v /data/neo4j/import:/var/lib/neo4j/import \
-v /data/neo4j/plugins:/var/lib/neo4j/plugins \
-e NEO4J_AUTH=neo4j/zxcvbnm1 \
--name neo4j  neo4j:5.26.2

# 停止容器
# docker container stop neo4j
# 删除容器
# docker container rm neo4j

链接neo4j

浏览器输入 本地地址和端口7474 即可访问, 7687 是默认端口,可以自己修改。

结果

  1. 顺利安装完毕docker。
  2. 顺利下载了镜像并启动了一个容器服务。
  3. 本地可以正常使用图形数据库了。
  4. 自己的技能又一次+1。
本文由作者按照 CC BY 4.0 进行授权