在windows上用docker desktop安装StoneDB

自6月底开源以来,许多热心的社区用户都对StoneDB进行了编译和测试,也有一些用户询问StoneDB是否会支持Windows。虽然适配Windows版本的StoneDB尚未进入研发计划,但实际上我们也可以通过强大的docker在windows上体验StoneDB的性能。本文就从一个初学者角度,带大家一起在windows上用docker desktop安装部署StoneDB。
1、安装Docker desktop 因为是在Windows下安装docker,所以需要先安装windows版的docker环境。
1.1 下载
在官方网站(https://www.docker.com/products/docker-desktop/),找到Docker Desktop for windows版本的下载链接,点击下载。
在windows上用docker desktop安装StoneDB
文章图片

1.2 安装
【在windows上用docker desktop安装StoneDB】下载完成后后,打开安装包进行安装。
在windows上用docker desktop安装StoneDB
文章图片

默认会勾选安装WSL 2(WSL是windows推出的可让开发人员不需要安装虚拟机或者设置双系统启动,就可以原生支持运行GNU/Linux的系统环境,简称WSL子系统),按照默认设置进行安装。
在windows上用docker desktop安装StoneDB
文章图片

在windows上用docker desktop安装StoneDB
文章图片

安装完成后后,需要重启系统。
1.3 安装WSL 2核心
重启系统后,系统提示WSL 2的安装还未完成。于是按照系统提示,点击链接,下载WSL 2内核。
在windows上用docker desktop安装StoneDB
文章图片

在windows上用docker desktop安装StoneDB
文章图片

根据提示安装,然后重启系统。
1.4 安装Docker desktop完成
重启系统后,Docker desktop就自动打开了。
在windows上用docker desktop安装StoneDB
文章图片

现在还没有任何容器和镜像。
在windows上用docker desktop安装StoneDB
文章图片

1.5、配置镜像加速
据说docker镜像在国内下载很慢,所以需要配置一下国内大厂提供的免费docker镜像。
点击docker desktop右上角的小齿轮,进入settings,找到Docker Engine选项,就在这里填写镜像相关的设置:
在windows上用docker desktop安装StoneDB
文章图片

需要按照json规则,把镜像加速相关的地址,填写到设置里面:

"registry-mirrors": [ "https://hub-mirror.c.163.com", "https://<你的ID>.mirror.aliyuncs.com", "https://registry.docker-cn.com", "https://mirror.ccs.tencentyun.com", "https://mirror.baidubce.com" ],

请注意,阿里云的镜像加速地址,最好到阿里云后台的“容器镜像服务-镜像加速器”里面使用自己的加速器地址。
填写好以后是这样的:
在windows上用docker desktop安装StoneDB
文章图片

点击右下角的“Apply & Restart”,保存并重启docker。
这样,windows下面的docker环境就部署好了。
2、用docker安装StoneDB 下面终于可以在docker环境中安装StoneDB了。
2.1 拉取StoneDB镜像
StoneDB的镜像仓库,就在:https://hub.docker.com/r/stoneatom/stonedb
在windows上用docker desktop安装StoneDB
文章图片

先通过页面提供的官方拉取命令docker pull stoneatom/stonedb,在命令行尝试拉取。
在windows上用docker desktop安装StoneDB
文章图片

拉取失败,没有最新的标签?于是看了一下官方的部署文档(https://stonedb.io/zh/docs/getting-started/quick-deploy-in-docker),原来需要指定拉取的镜像版本。
于是再次拉取docker pull stoneatom/stonedb:v0.1
在windows上用docker desktop安装StoneDB
文章图片

这次没问题了。
在windows上用docker desktop安装StoneDB
文章图片

拉取完成后,也可以在docker desktop程序里面看到这个拉下来的镜像:
在windows上用docker desktop安装StoneDB
文章图片

2.2 创建容器
按照官方的部署文档(https://stonedb.io/zh/docs/getting-started/quick-deploy-in-docker),创建容器的参考命令是:
docker run -p 13306:3306 -v $stonedb_volumn_dir/data/:/stonedb56/install/data/ -it -d stoneatom/stonedb:v0.1 /bin/bash

参数说明:
-p:端口映射,把容器端口映射到宿主机端口上,前面是宿主机端口,后面是容器端口
-v:目录挂载,如果没有挂载的话,容器重启会进行初始化,前面是宿主机映射路径,后面是容器映射路径
-i:交互式操作
-t:终端
-d:启动不进入容器,想要进入容器需要使用指令 docker exec
按照说明,端口映射可以不用修改,但是目录挂载的参数,是需要修改的,因为windows的目录与linux的目录肯定是不一样的,这里设置了我本地D盘的目录作为持久化存储(D:\docker\stonedb0.1)。最后改好的运行容器命令行是:
docker run -p 13306:3306 -v D:\docker\stonedb0.1:/stonedb56/install/data/ -it -d stoneatom/stonedb:v0.1 /bin/bash

运行命令行:
在windows上用docker desktop安装StoneDB
文章图片

成功执行后,也可以在docker desktop的容器列表里面,看到新创建的容器:
在windows上用docker desktop安装StoneDB
文章图片

到这一步,StoneDB已经在Windows上面运行起来了。
2.3 连接StoneDB数据库
既然StoneDB数据库已经开始运行,就可以连接数据库进行操作了。连接的方法很多,可以进入容器用命令行进行操作,也可以使用所有MySQL兼容的客户端进行连接。我这里使用Navicat进行连接。
在Navicat添加本地服务器,设置端口号,连接账号与密码。这个镜像的默认登录账号为root,密码stonedb123。
在windows上用docker desktop安装StoneDB
文章图片

点连接测试,连接成功。于是点确定进行连接。
连接成功后,可以看到默认的7个数据表,这时候就可以对数据库进行操作了。
在windows上用docker desktop安装StoneDB
文章图片

在windows上用docker desktop安装StoneDB的流程介绍到此结束,希望每一个对HTAP感兴趣的用户都可以成功装上StoneDB进行测试。我的安装流程还算顺利,按照官方的docker部署文档进行操作,没有遇到太大问题。如果你有关于StoneDB的任何问题,包括安装和部署,都可以加我wx:yangwilly,我帮你摇人解决。
后续我会继续在不同环境进行部署测试,以及测试StoneDB的具体性能。

    推荐阅读