这篇文章主要讲解了“怎么用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这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!