【Docker】Centos7下docker启动并且配置Clickhouse

来玩Docker啦

曾经某一刻, 我突然觉得生命很空旷, 于是对她说: 得了吧, 赶紧干活, 干完睡觉 !!

今天玩点不一样的, Docker部署CK, 然后创建管理员用户

1. 拉取镜像

用 Docker 部署 CK 默认用户和密码
在使用 Docker 部署 CK (ClickHouse) 数据库时,为了提高安全性,我们通常需要设置默认用户和密码。这样可以防止未授权访问和保护数据库的重要信息。本篇文章将介绍如何在 Docker 中部署 CK 并设置默认用户和密码。

CK 简介
CK 是一个开源的分布式列式数据库管理系统,专为大型数据集设计。它支持高性能的数据处理和查询,并在大数据领域广泛应用。

Docker 部署 CK
首先,我们需要在本地环境安装 Docker。然后,我们可以使用以下命令从 Docker Hub 上下载 CK 镜像并运行容器:

# 拉取docker的ck镜像
docker pull yandex/clickhouse-server

2. 运行镜像

# 先运行下docker镜像, 用于复制里面的运行配置文件挂在到宿主机
docker run --privileged=true -d --name ck-server -p 8123:8123 yandex/clickhouse-server
# 从容器中拷贝文件到主机中
docker cp ck-server:/etc/clickhouse-server /home
# 授权挂载的文件
chmod 777 /home/clickhouse-server
# 然后删掉原来的docker运行容器
docker rm -f ck-server

在这里插入图片描述

这里不能直接使用挂在的文件运行, 会显示无法创建管理员用户, 因此我们需要在挂在配置里面添加授权信息
宿主机路径: /home/clickhouse-server/users.xml

# 修改模式进入
vi /home/clickhouse-server/users.xml
# (按一些键盘上的I键(注意, 这是字母那个I, 不是1更不是L), 代表insert模式)
# 找到对应的行一般在第二页(看到<password></passwrod>就可以停下来了)
# 这里需要修改下ck运行文件信息, 在<password></passwrod>下面一行添加
<access_management>1</access_management>
# 然后按一下esc, 之后输入:wq, 然后就保存退出来了, 其他东西别改!小心操作 

看效果
在这里插入图片描述

# 挂载文件配置好了后, 直接运行起来, 这之所以是两个端口是因为我宿主机跑了另外一个应用端口9000给占用了
docker run --privileged=true -d --name ck-server -p 9001:9000 -p 8123:8123 -v /home/clickhouse-server:/etc/clickhouse-server yandex/clickhouse-server
# 创建容器运行映射目录
docker exec -it ck-server bash
# 容器内使用clickhouse client命令连接ck
clickhouse client
# 创建管理员用户
CREATE USER username IDENTIFIED BY 'password';

在这里插入图片描述

3. 这时候就可以外部连接了

在这里插入图片描述
好了, 现在可以用springboot去集成这玩意了, 这个因为是列式数据库, 因此索引效率很高, 相对ES来讲, 不吃那么多内存, 很棒棒!!

4. 总结

注意几个点:
创建不了管理员用户的因素主要有:

  1. 没修改挂载的 /home/clickhouse-server/users.xml
  2. 没有对 /home/clickhouse-server 授权 (chmod 777 处理)

这里一般会报什么 ACCESS DENY, 然后什么权限 101 的, 基本就这两件事

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值