怎么用Docker方式部署TiDB

这篇文章主要讲解了“怎么用Docker方式部署TiDB”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么用Docker方式部署TiDB”吧!

安装Docker

[root@localhost /]# cat /etc/redhat-release 
CentOS Linux release 7.5.1804 (Core) 
[root@localhost /]# yum install docker-ce -y
[root@localhost tidb]# service docker start
Redirecting to /bin/systemctl start docker.service

拉取 TiDB 的 Docker 镜像

[root@localhost /]# docker pull pingcap/tidb:latest
[root@localhost /]# docker pull pingcap/tikv:latest
[root@localhost /]# docker pull pingcap/pd:latest
[root@localhost /]# mkdir tidb

部署一个多节点集群

启动PD(1个节点)

docker run -d --name pd1 /
  -p 2379:2379 /
  -p 2380:2380 /
  -v /etc/localtime:/etc/localtime:ro /
  -v /tidb:/tidb /
  pingcap/pd:latest /
  --name="pd1" /
  --data-dir="/tidb/pd1" /
  --client-urls="http://0.0.0.0:2379" /
  --advertise-client-urls="http://192.168.30.131:2379" /
  --peer-urls="http://0.0.0.0:2380" /
  --advertise-peer-urls="http://192.168.30.131:2380" /
  --initial-cluster="pd1=http://192.168.30.131:2380"

启动TiKV(3个节点)

docker run -d --name tikv1 /
  -p 20160:20160 /
  --ulimit nofile=1000000:1000000 /
  -v /etc/localtime:/etc/localtime:ro /
  -v /tidb:/tidb /
  pingcap/tikv:latest /
  --addr="0.0.0.0:20160" /
  --advertise-addr="192.168.30.131:20160" /
  --data-dir="/tidb/tikv1" /
  --pd="192.168.30.131:2379"
docker run -d --name tikv2 /
  -p 20161:20161 /
  --ulimit nofile=1000000:1000000 /
  -v /etc/localtime:/etc/localtime:ro /
  -v /tidb:/tidb /
  pingcap/tikv:latest /
  --addr="0.0.0.0:20161" /
  --advertise-addr="192.168.30.131:20161" /
  --data-dir="/tidb/tikv2" /
  --pd="192.168.30.131:2379"
  
docker run -d --name tikv3 /
  -p 20162:20162 /
  --ulimit nofile=1000000:1000000 /
  -v /etc/localtime:/etc/localtime:ro /
  -v /tidb:/tidb /
  pingcap/tikv:latest /
  --addr="0.0.0.0:20162" /
  --advertise-addr="192.168.30.131:20162" /
  --data-dir="/tidb/tikv3" /
  --pd="192.168.30.131:2379"

启动TiDB(1个节点)

docker run -d --name tidb /
  -p 4000:4000 /
  -p 10080:10080 /
  -v /etc/localtime:/etc/localtime:ro /
  pingcap/tidb:latest /
  --store=tikv /
  --path="192.168.30.131:2379"

查看Docker服务状态

[root@localhost tidb]# docker ps
CONTAINER ID        IMAGE                 COMMAND                  CREATED             STATUS              PORTS                                              NAMES
ce37e8785c99        pingcap/tikv:latest   "/tikv-server --addr…"   14 minutes ago      Up 14 minutes       20160/tcp, 0.0.0.0:20162->20162/tcp                tikv3
419020160d11        pingcap/tikv:latest   "/tikv-server --addr…"   15 minutes ago      Up 15 minutes       20160/tcp, 0.0.0.0:20161->20161/tcp                tikv2
bfba95e0d4de        pingcap/tidb:latest   "/tidb-server --stor…"   About an hour ago   Up About an hour    0.0.0.0:4000->4000/tcp, 0.0.0.0:10080->10080/tcp   tidb
c7c3a9cd2e55        pingcap/tikv:latest   "/tikv-server --addr…"   About an hour ago   Up About an hour    0.0.0.0:20160->20160/tcp                           tikv1
e2846afa5f0c        pingcap/pd:latest     "/pd-server --name=p…"   About an hour ago   Up About an hour    0.0.0.0:2379-2380->2379-2380/tcp                   pd1

使用 MySQL 标准客户端连接 TiDB 测试

[root@localhost tidb]# mysql -h 127.0.0.1 -P 4000 -u root -D test
Welcome to the MariaDB monitor.  Commands end with ; or /g.
Your MySQL connection id is 6
Server version: 5.7.10-TiDB-v2.1.0-rc.1-67-gb2bfd8f MySQL Community Server (Apache License 2.0)
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '/h' for help. Type '/c' to clear the current input statement.
MySQL [test]> show databases;
+--------------------+
| Database           |
+--------------------+
| INFORMATION_SCHEMA |
| PERFORMANCE_SCHEMA |
| mysql              |
| test               |
+--------------------+
4 rows in set (0.00 sec)

感谢各位的阅读,以上就是“怎么用Docker方式部署TiDB”的内容了,经过本文的学习后,相信大家对怎么用Docker方式部署TiDB这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/205272.html

(0)
上一篇 2021年11月29日
下一篇 2021年11月29日

相关推荐

发表回复

登录后才能评论