Skip to content

Latest commit

 

History

History
98 lines (81 loc) · 4.75 KB

0.3.1_dble_quick_start_docker.md

File metadata and controls

98 lines (81 loc) · 4.75 KB

0.3.1 快速开始(docker)

0.3.1.1 关于本节

  • 本节内容为您介绍如何通过dockerhub上的dble镜像快速启动一个dble

0.3.1.2 安装准备

  • 安装docker
  • 若需要使用docker-compose快速启动,请安装docker-compose
  • 安装mysql连接工具,用于进行连接测试观察结果

0.3.1.3 安装过程

按照顺序依次执行以下docker命令:

docker network create -o "com.docker.network.bridge.name"="dble-net" --subnet 172.18.0.0/16 dble-net

docker run --name backend-mysql1 --ip 172.18.0.2 -e MYSQL_ROOT_PASSWORD=123456 -p 33061:3306 --network=dble-net -d mysql:5.7 --server-id=1

docker run --name backend-mysql2 --ip 172.18.0.3 -e MYSQL_ROOT_PASSWORD=123456 -p 33062:3306 --network=dble-net -d mysql:5.7 --server-id=2

sleep 30

docker run -d -i -t --name dble-server --ip 172.18.0.5 -p 8066:8066 -p 9066:9066 --network=dble-net actiontech/dble:latest

通过以上命令依次创建一个docker网络,两个分别映射到主机 33061 和 33062 端口的mysql服务,一个将服务端和管理端映射到主机 8066 和 9066 端口的服务
服务将在约一分钟之后被启动,这是由于为了进行快速的启动需要对于mysql和dble的配置进行一些初始化

0.3.1.4 连接并使用

使用准备好的mysql连接工具连接主机的8066或者9066端口,在docker的默认配置中
8066 端口(服务端口能够执行SQL语句)的用户和密码为 root/123456
9066 端口(管理端口能够执行管理语句)的用户和密码为 man1/654321
此例子中准备了一些表格并提前进行了表格创建,若需要连接更多的表格配置详情和使用方法
请在dble-server容器中查阅 /opt/dble/conf/sharding.xml 文件

在虚拟机已经有安装mysql客户端的状态下,可以使用以下默认命令进行连接

#连接 dble 业务端口
mysql -P8066 -u root -p123456 -h 127.0.0.1   
#连接 dble 管理端口
mysql -P9066 -u man1 -p654321 -h 127.0.0.1
#连接后端mysql1
mysql -P33061 -u root -p123456 -h 127.0.0.1
#连接后端mysql2
mysql -P33062 -u root -p123456 -h 127.0.0.1

0.3.1.5 环境清理

使用完成或者进行环境重建的时候可以使用以下命令进行环境的清空

docker stop backend-mysql1
docker stop backend-mysql2
docker stop dble-server
docker rm backend-mysql1
docker rm backend-mysql2
docker rm dble-server
docker network rm dble-net

0.3.1.6 docker-compose 版本快速启动

docker-compose启动需要先从github项目下载对应的配置文件

wget https://raw.githubusercontent.com/actiontech/dble/master/docker-images/quick-start/docker-compose.yml

通过使用docker-compose的配置脚本直接启动两个mysql镜像以及一个dble镜像,在配置文件存放目录执行

docker-compose up

同样的,默认状态下启动 dble 的状态和使用 quick-start 启动的 dble 一致,dble-server容器会启用服务端口和管理端口 8066/9066 对外提供服务 可以使用默认用户和密码 root/123456 连接8066端口进行测试,同时两个后端mysql的本机端口分别是 33061/33062,默认的用户和密码也是root/123456

在使用或者测试完毕之后,在配置文件存放目录下使用以下指令回收对应资源

docker-compose stop
docker-compose rm

0.3.1.7 尝试使用本地配置启动docker-compose

注意
本小结的内容需要用户在充分了解并掌握dble配置和结构的状态下进行,作为一种快速启动特定配置dble以供测试或调试使用 首次了解并使用dble的用户可以跳过此节

本地配置启动dble的原理是通过volumes配置的映射将本地的配置目录映射到docker容器中,之后初始化的时候在初始化脚本中将本地配置目录中的文件复制到对应的dble/conf目录中,之后再进行初始化和dble启动

首先需要在docker-compose.yml的最后一段dble-server容器配置中添加以下内容

volumes:
   - /opt/test/conf:/opt/self_conf

此命令将本地的/opt/test/conf目录映射到目标容器/opt/self_conf目录中去 之后调整dble-server容器的启动命令

command: ["/opt/dble/bin/wait.sh", "backend-mysql1:3306","--","/opt/self_conf/docker_init_start.sh"]

将原本调用的/opt/dble/bin/docker_init_start.sh修改为本次初始化准备使用的self_conf目录下的初始化脚本
这里对于本地启动的初始化脚本只给出如下一些建议

  • 首先将需要修改的配置文件放置到/opt/dble/conf目录下
  • 调用/opt/dble/bin/dble start启动dble服务
  • 调用脚本/opt/dble/bin/wait-for-it.sh 脚本监听dble 8066 服务,等待dble服务启动完成
  • 调用mysql命令对于dble的后端数据库以及初始数据进行初始化