当下容器运行应用已经越来越火,只要主机上能运行 Docker,就可以通过镜像来运行应用,不需要考虑环境是否满足应用的运行条件。今天就给大家分享一下使用镜像运行 ivorysql 数据库。如果你容器运行过 postgresql,那就比较容易上手了,几乎是一样的体验,稍微有点差别,后面会说明。
友情提示:这里的镜像不是官方制作,仅供测试体验。
Here we go!!! >>>
1. Docker 环境准备
这里笔者的环境是CentOS7.9
和Windows10
。这里提供参考链接,不再详细描述步骤。
1.1 Linux Docker
参考方法:使用二进制文件压缩包安装
1.2 Windows Docker
参考方法:Windows Docker 安装
2. 运行 ivorysql 镜像
下面根据上面两个 Docker 环境分别说明如何运行。
2.1 Linux 环境
Linux 环境的 Docker 在线构建示例:
docker run -dit --rm --name=ivorysql -p 5333:5333 \
-v /home/ivorsql:/var/lib/ivorysql/ivorysql-2/data \
-e TZ="Asia/Shanghai" \
-e LANG="en_US.utf8" \
-e POSTGRES_HOST_AUTH_METHOD="md5" \
-e POSTGRES_INITDB_ARGS="-E 'UTF8' --compatible-mode=oracle" \
-e POSTGRES_PASSWORD="666666" \
rogerq/ivorysql
2.2 Windows 环境
Windows10 环境的 Docker desktop 在线构建示例:
docker run -dit --name=ivorysql -p 5333:5333 `
-v D:\dockerdata\ivorsql:/var/lib/ivorysql/ivorysql-2/data `
-e TZ="Asia/Shanghai" `
-e LANG="en_US.utf8" `
-e POSTGRES_HOST_AUTH_METHOD="md5" `
-e POSTGRES_INITDB_ARGS="-E 'UTF8' --compatible-mode=oracle" `
-e POSTGRES_PASSWORD="666666" `
rogerq/ivorysql
2.3 运行说明
说明
-
由于不同版本的 data 目录路径不一样,最新的v2.1对应的是
/var/lib/ivorysql/ivorysql-2/data
; -
如果选择v1.5,请使用:
/var/lib/ivorysql/ivorysql-1/data
。 -
如果要多个 ivorysql 同时运行于同一台宿主机,注意本地端口和存储路径要不同;
-
–name=ivorysql:指明容器的名称,后面对容器的操作可以使用这个名称来标识;
-
使用选项
-p
将容器端口(右边端口号5333)映射到宿主机(左边端口号),然后可以通过宿主机的端口服务访问; -
使用选项
-v
将容器的目录映射到宿主机的存储路径,这样就不用担心丢失数据; -
环境变量
POSTGRES_PASSWORD
用来指定DBA用户的密码; -
如果要默认开启Oracle模式,则修改环境变量:-e POSTGRES_INITDB_ARGS=“-E ‘UTF8’ --compatible-mode=oracle”。
3. 常见操作
容器运行的 ivorysql 只配置了listen_addresses
,和客户端验证允许外部主机访问。
额外的配置操作可以通过客户端工具执行命令,或者有必要则进入容器修改,进入容器的命令如下:
docker exec -it ivorysql bash
先从宿主机登录psql:
docker exec -it ivorysql gosu ivorysql psql
然后就可以执行psql相关命令了。
改完配置,如果需要重启,则重启一下容器即可。重启命令如下:
docker restart ivorysql
<<< There you go!!!
后记
文章有点过于简单,后续会持续完善,有问题建议也可以在评论区提或私信皆可。感谢阅读😊。