1、拉取镜像
docker pull cockroachdb/cockroach:v1.0.2 docker run --rm cockroachdb/cockroach:v1.0.2 version // 确认镜像正常使用
2、新建网桥
在单机环境运行多个容器,之间需要使用docker的网桥模式使得容器间能够进行互访,同时保证容器间在外网环境是互相隔离
docker network create -d bridge roachnet
3、启动第一个节点
docker run -d \ --name=roach1 \ --hostname=roach1 \ --net=roachnet \ -p 26257:26257 -p 8080:8080 \ -v "${PWD}/cockroach-data/roach1:/cockroach/cockroach-data" \ cockroachdb/cockroach:v1.0.2 start --insecure
--hostname:容器间通过hostname加入集群
26257:cockroach默认的端口
8080:监控UI的端口
-p:映射容器宿主机和容器的端口
-v:挂载宿主机目录
start --insecure 在容器内启动节点
4、加入另外节点到集群
docker run -d \ --name=roach2 \ --hostname=roach2 \ --net=roachnet \ -v "${PWD}/cockroach-data/roach2:/cockroach/cockroach-data" \ cockroachdb/cockroach:v1.0.2 start --insecure --join=roach1 docker run -d \ --name=roach3 \ --hostname=roach3 \ --net=roachnet \ -v "${PWD}/cockroach-data/roach3:/cockroach/cockroach-data" \ cockroachdb/cockroach:v1.0.2 start --insecure --join=roach1
--join:容器节点加入集群,通过前面指定的hostname
5、集群测试
docker exec -it roach1 ./cockroach sql --insecure
输出:
# Welcome to the cockroach SQL interface.
# All statements must be terminated by a semicolon.
# To exit: CTRL + D.
执行sql:
CREATE DATABASE bank; CREATE TABLE bank.accounts (id INT PRIMARY KEY, balance DECIMAL); INSERT INTO bank.accounts VALUES (1, 1000.50); SELECT * FROM bank.accounts;
节点1的结果
+----+---------+ | id | balance | +----+---------+ | 1 | 1000.50 | +----+---------+ (1 row) \q 退出
节点2,节点3:
SELECT * FROM bank.accounts;
查询结果:
+----+---------+ | id | balance | +----+---------+ | 1 | 1000.50 | +----+---------+ (1 row) \q 退出节点
6、集群监控
启动集群时已管理宿主机的8080端口,可以查看容器
docker ps
55e09b83cdba cockroachdb/cockroach:v1.0.2 "/cockroach/cockroach" 40 minutes ago Up 40 minutes 0.0.0.0:8080->8080/tcp, 0.0.0.0:26257->26257/tcp roach1
在浏览器中打开地址,http://localhost:8080,本例是在云服务器中执行,所以通过外网查看
至此已成功docker中运行cockroach集群
相关推荐
docker compose部署redis集群,三主三从,并且外网可以访问,另外还可以从gitee上获取此文件,gitee上除了Redis之外还会陆续提供其他docker部署的文件,https://gitee.com/korov/Docker.git
Docker+K8S 集群环境搭建及分布式应用部署,一个简单的教程,对docker+k8s有个初步的了解
docker 一键部署redis集群 shell脚本 适用centos7.x版本,按照说明 将参数传递给 安装脚本,自动执行部署程序,亲测可用
1.先运行 createFile.py 输入宿主机IP地址,输入redis密码 2.按照控制台输出执行docker-compose up -d 启动命令 3.启动成功后执行加入集群命令即可
Docker 本身就是基于 Linux 的,所以首先以我的一台服务器做实验。虽然最后跑 wordcount 已经由于内存不足而崩掉,但是之前的过程还是可以参考的。 连接服务器 使用 ssh 命令连接远程服务器。 ssh root@[Your IP ...
docker容器中搭建kafka集群环境,kafka集群配置注意事项与优化
docker中启动大数据脚本
教程:在linux虚拟机下(centos),通过docker容器,部署hadoop集群。一个master节点和三个slave节点。
Docker集群化部署
docker安装rabbitmq3.8集群-3台-详细笔记文档-带安装包
docker容器中搭建kafka集群环境
使用Docker建立Mysql集群使用Docker建立Mysql集群使用Docker建立Mysql集群使用Docker建立Mysql集群
4. 构建基于docker的单节点的HDFS集群-01 5. docker容器跨物理节点通信-01 6 跨物理节点构建基于docker的10节点HDFS集群-说明文档-01 7. 跨物理节点构建基于docker的任意节点的HDFS集群-01 8. 见证奇迹-快速构建10...
全部源码dockerfile等,按照readme说明可以使用docker一键安装hadoop集群,需要在linux系统下使用
akka-docker-cluster-example, 支持 Docker 支持的akka集群项目示例 akka-docker-cluster-example支持 Docker 支持的akka集群项目示例。 请参见博客文章 。 使用 SBT本机打包程序。:如何运行在SBT中,运行 docker:...
docker安装greenplum集群服务,通过dockerfile创建greenplum镜像,容器启动后,对greenplum集群进行配置
linux命令行,docker安装zookeeper3.4.9集群
docker一键搭建rabbitmq集群 只需运行一条命令就可搭建rabbitmq集群
1、kafka-docker-compose集群安装 2、kafka配置详解
通过使用 Docker,可以快速的在本地搭建一套 Spark 环境,方便大家开发 Spark 应用,或者扩展到...下面这篇文章主要给大家介绍了使用docker快速搭建Spark集群的方法教程,需要的朋友可以参考借鉴,下面来一起看看吧。