1、自行安装docker,确保docker处于运行状态
# 查看docker版本
docker -v
# systemd查看docker状态
systemctl status docker

image.png
2、金仓数据库Docker镜像下载地址:电科金仓官网 → 产品 → KingbaseES → 下载 → 找到Docker镜像 → 选择合适的版本,如V8R6 → 选择合适的架构下载:

image.png
3、镜像包上传到服务器,将镜像加载到docker中:
# 加载镜像,记住Loaded image:的值,这个是镜像名
docker load -i docker_kdb_x86_64_V008R006C009B0014.tar
96723fcc60ed: Loading layer [==================================================>] 309.9MB/309.9MB
3a1017d60ea0: Loading layer [==================================================>] 22.53kB/22.53kB
cd099deb41d7: Loading layer [==================================================>] 7.168kB/7.168kB
c248d1eae5c2: Loading layer [==================================================>] 8.192kB/8.192kB
73aa8302d2a6: Loading layer [==================================================>] 8.704kB/8.704kB
34f16a65ad67: Loading layer [==================================================>] 434.5MB/434.5MB
db2c6a0abc30: Loading layer [==================================================>] 8.192kB/8.192kB
da210b7f5e34: Loading layer [==================================================>] 5.632kB/5.632kB
89e1b337aa73: Loading layer [==================================================>] 3.072kB/3.072kB
831b10f387de: Loading layer [==================================================>] 5.12kB/5.12kB
Loaded image: kingbase_v008r006c009b0014_single_x86:v1
4、创建容器外的数据挂载卷
# 创建金仓宿主机数据存放目录
mkdir -p /data/kingbase
chmod -R 755 /data/kingbase/
5、自定义启动金仓容器:
# 自定义启动命令,管理员帐号kingbase,Oracle模式,--name镜像名要与Loaded image一致
# -p 54321:54321 容器内外均监听54321端口
# -v /data/kingbase 容器外挂载卷,对应上一步
# DB_USER、DB_PASSWORD自定义数据库管理员帐号密码
# DB_MODE数据库兼容模式:以Oracle运行
# --name对应docker images中的镜像名
docker run -tid --privileged \
-p 54321:54321 \
-v /data/kingbase:/home/kingbase/userdata/ \
-e NEED_START=yes \
-e DB_USER=kingbase \
-e DB_PASSWORD=Testing123. \
-e DB_MODE=oracle \
--name kingbase kingbase_v008r006c009b0014_single_x86:v1 \
/usr/sbin/init
6、检查金仓容器是否处于运行状态,容器外端口是否OK
docker ps -a
netstat -ntlp | grep 54321

image.png
7、设置开机自启动
# 给名为 kingbase 的容器添加自启,后续docker启动后,kingbase容器自启动
docker update --restart unless-stopped kingbase
8、客户端连接数据库

image.png
9、放置授权文件到挂在卷下的etc目录
# 可执行权限
chmod 755 /data/kingbase/etc/license.dat
10、金仓启停
# 停止
docker stop kingbase
# 启动
docker start kingbase
# 看日志
docker logs kingbase
11、查看数据库版本信息和lic剩余时间
-- 数据库SQL:查看版本
SELECT version();
-- 数据库SQL:
SELECT get_license_validdays();

image.png

image.png
cat /data/kingbase/etc/license.dat也能看授权信息:

image.png
12、驱动同样通过电科金仓官网下载与版本匹配的驱动文件:

image.png