基于Docker Compose完成Mysql和Doris环境的部署
本文是本系列教程的第二部分:基于Docker Compose完成Mysql和Doris环境的部署
前言
本教程需要用到Mysql和Doris。
如果您已经具备了Mysql和Doris环境,则可以跳过本教程。如果您本地还没有Mysql和Doris环境,则本文会带领大家完成Mysql和Doris环境的部署。
Docker环境
检查本地开发环境是否已经安装了docker
docker -v
检查是否安装docker-compose
docker-compose -v
没有docker和docker-compose环境的请自行安装。
由于Doris的运行需要内存映射支持,则需要先执行如下命令:
sysctl -w vm.max_map_count=2000000
如果出现以下报错:
则修改为以下命令:
sudo sysctl -w vm.max_map_count=2000000
MacOS 由于内部实现容器的方式不同,在部署时宿主机直接修改max_map_count值可能无法成功,需要先创建以下容器:
docker run -it --privileged --pid=host --name=change_count debian nsenter -t 1 -m -u -n -i sh
容器创建成功执行以下命令:
sysctl -w vm.max_map_count=2000000
然后exit退出。
编写docker-compose.yml
文件
使用docker-compose部署需要先创建一个docker-compose.yml文件,内容如下:
version: '2.1'
services:
doris:
image: yagagagaga/doris-standalone
ports:
- "8030:8030"
- "8040:8040"
- "9030:9030"
mysql:
image: debezium/example-mysql:1.1
ports:
- "3306:3306"
environment:
- MYSQL_ROOT_PASSWORD=123456
- MYSQL_USER=mysqluser
- MYSQL_PASSWORD=mysqlpw
该 Docker Compose 中包含的容器有:
MySQL: 包含商品信息的数据库 app_db
Doris: 存储从 MySQL 中根据规则映射过来的结果表
启动容器
在 docker-compose.yml 所在目录下执行下面的命令来启动本教程需要的组件:
docker-compose up -d
该命令将以 detached 模式自动启动 Docker Compose 配置中定义的所有容器。
验证容器是否正常启动:
docker ps
访问Doris Web UIhttp://localhost:8030/
,查看Doris是否正常运行。
默认的用户名为 root,默认密码为空。
至此,我们就部署完成了Mysql和Doris环境。
进阶
本教程中使用到了docker和docker-compose等容器化相关技术,docker也被广泛应用在众多场景下。如果您想要继续学习docker相关的知识,可以关注:遇码,回复:docker,获取docker官方文档。