Docker搭建neo4j
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker搭建neo4j相关的知识,希望对你有一定的参考价值。
参考技术A 1、docker镜像准备2、启动配置修改
需要提前建立宿主机的文件夹
3、csv文件导入问题
neo4j.conf中一定要加入配置,先启动一次 neo4j会自动生成此文件,再修改重启neo4j
dbms.directories.import=/var/lib/neo4j/import
不然一直报错
文件导入例子:
CICD搭建之 docker私服搭建
参考技术A在开发中搭建cicd时docker私服是必不可少的,这里记录一下笔者的私服搭建过程
版本及说明
registry是docker的私服
docker pull registry:2.7.1
docker的私服ui
docker pull konradkleine/docker-registry-frontend:v2
浏览器访问ip+7500/v2,如下图访问正常
下面要通过registry-ui访问私服,启动脚本需要配置registry的pod的ip和端口,先查看一下registry在docker中的ip,用容器id,命令如下
查询后得到registry的ip为172.17.0.2,根据前的registry启动脚本可以看到私服在docker中的端口为5000,因此启动命令如下
私服ui启动完毕,用浏览器访问ip+9080
现在我们上传一个镜像到私服上看看,先拉取一个用来测试的镜像(不指定tag默认是latest)
修改镜像的名(这里我们的私服是启动在本机上的,映射到宿主机的端口是7500,所以命名为localhost:7500/redis,tag省略了默认latest)
推送到私服
推送成功,访问一下,如图
不部署registry-ui也是可以的,通过registry的http接口访问,registry-ui只是套了一层皮肤,通过web浏览方便些
先删除本地docker中的镜像
删除后可以验证一下本地是否已经删除,命令如下
拉取私服localhost:7500上的镜像
拉取成功
docker私服都是独立的,只要地址不同就不会冲突,我们可以验证一下,再启一个registry,然后推送一个镜像(要注意我们是同一台宿主机,因此宿主机的端口和docker中的name需要修改一下,跟前一个registry不能冲突)
到目前为止,我们上传的到私服的镜像都是在registry的容器中,容器重启镜像就全没了,所以我们得把数据持久化到宿主机的磁盘上。
网上有些资料通过设置环境变量或者配置文件来实现持久化,尝试了几种都没有成功,简单例举几个
根据图中信息,可以看出registry的配置文件路径是"/etc/docker/registry/config.yml",registry中存储镜像的路径是/var/lib/registry。
于是,我们有2种解决办法
1.通过cmd命令让registry读取自定义的配置文件
2.将镜像存储路径映射到宿主机磁盘
我们先来尝试第一种,为了大家不走弯路,我直接将镜像中配置文件原样copy出来,只修改镜像存储路径将 /var/lib/registry修改为/opt/docker-image。
通过以下命令,进入registry的容器,然后查看配置文件
修改后的配置文件
将文件保存到提前建好的宿主机的目录下
/home/wxd/cicd/registry/registry-config/config.yml
准备用来存储镜像的目录
/home/wxd/cicd/registry/docker-image
启动脚本
启动后用刚才的命令push一个镜像
docker push localhost:7501/redis
执行完毕后,看看宿主机目录下是否后数据生成。
可以看到有数据生成,详细的可以自己导docker目录下去看
然后重启一下容器,验证一下registry中的数据有没有丢失,可以使用上文介绍的方法验证redis进行是否存在(可以通过ui或者registry的http接口 http://192.168.56.102:7501/v2/_catalog )
停掉刚才启动的容器,记得把宿主机的docker-image目录下的文件清理掉。
脚本如下
启动完毕后,验证方法同方案一,先push镜像,然后检查宿主机目录下是否有数据,重启registry,看镜像是否还在
以上是关于Docker搭建neo4j的主要内容,如果未能解决你的问题,请参考以下文章