文章目录
- Docker安装Metabase
- CentOS7安装Docker
- 获取最新的 Docker 镜像
- 启动Metabase容器
- 在Metabase初始化时查看日志
- 访问Metabase
- Metabase 的 ClickHouse 驱动程序安装
- 环境简介
- 删除容器
- 创建容器
- 下载click house驱动
- 放入驱动
- 重启容器
- 将元数据库连接到 ClickHouse
- 报错解决
Docker安装Metabase
CentOS7安装Docker
1、添加yum仓库
yum install yum-utils -y
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
2、安装docker
[root@maruifu ~]# yum install docker-ce -y
3、验证安装是否成功
获取最新的 Docker 镜像
docker pull metabase/metabase:latest
查看相关镜像
docker search
启动Metabase容器
docker run -d -p 3000:3000 --name metabase metabase/metabase
若要在其他端口上运行Metabase,例:使用12345端口运行Metabase
docker run -d -p 3000:3000 --name metabase metabase/metabase
#挂载目录
docker run -d -v /data/metabase/data:/data -p 3000:3000 --restart=always --name metabase metabase/metabase
#docker启动自启
#1、如果已经启动的项目,则使用update更新
docker update --restart=always 容器名
#2、启动时加--restart=always
docker run -tid --name 容器名 -p 3000:3 --restart=always -v
在Metabase初始化时查看日志
docker logs -f metabase
访问Metabase
http://IP:3000
Metabase 的 ClickHouse 驱动程序安装
教程1:Github:配置数据库-clickhouse-驱动程序
教程2:CSDN:docker-metabase镜像打入clickhouse驱动
教程3:Click House:将元数据库连接到 ClickHouse
环境简介
由上文可知Metabase是由docker安装。metabase:latest(最新)与clickhouse版本要对应
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
docker.io/metabase/metabase latest 0eb8c7cbe665 4 weeks ago 456 MB
[root@localhost ~]#
删除容器
如何创建metabase得时候没有挂载目录,需要重新创建,或者使用docker命令复制,就不用删除容器
#1、
docker rm -f metabase
#2、
docker cp 本地文件路径 ID全称:容器路径
创建容器
docker run -d -v /data/metabase/data:/data -p 3000:3000 --name metabase metabase/metabase
下载click house驱动
下载地址:https://github.com/ClickHouse/metabase-clickhouse-driver/releases
#1、本地下载后上传
https://github.com/ClickHouse/metabase-clickhouse-driver/releases/download/1.1.3/clickhouse.metabase-driver.jar
#2、使用wget进行下载
wget https://github.com/ClickHouse/metabase-clickhouse-driver/releases/download/1.1.3/clickhouse.metabase-driver.jar
放入驱动
#1、复制到容器内
docker cp 本地文件路径 ID全称:容器路径
#2、放入挂载目录
mv clickhouse.metabase-driver.jar /data/metabase/data
#2.1进入容器
docker exec -it metabase bash
#2.2将挂载目录下得文件复制到容器内得/plugins
cp /data/clickhouse.metabase-driver.jar /plugins
重启容器
docker restart metabase
将元数据库连接到 ClickHouse
- 单击右上角的齿轮图标,然后选择**“管理员设置**”以访问您的元数据库管理页面。
- 单击“添加数据库”。或者,可以单击“数据库”选项卡,然后选择“添加数据库”按钮。
- 如果您的驱动程序安装有效,您将在数据库类型的下拉菜单中看到 ClickHouse:
-
为数据库指定一个显示名称,这是一个元数据库设置 - 因此请使用您喜欢的任何名称。
-
输入可立键数据库的连接详细信息。如果您的 ClickHouse 服务器配置为使用 SSL,请启用安全连接。例如:
- 单击“保存”按钮,元数据库将扫描数据库中的表
报错解决
问题1:Clickhouse拒绝远程连接
Host is unreachable (Host unreachable), server ClickHouseNode
解决方式:
1、查看clickhouse防火墙是否关闭
#查询防火墙是否开启
systemctl status firewalld
#关闭防火墙
systemctl stop firewalld
#禁用防火墙
systemctl disables firewalld
2、查看SELinux是否关闭
#查看状态enforcing (执行中)、permissive (不执行但产生警告)、disabled(关闭)
cat /etc/selinux/config
sestatus -v
getenforce
#临时关闭
setenforce 0
#永久关闭,重启机器
sed -i s#SELINUX=enforcing#SELINUX=disabled# /etc/selinux/config
3、修改Click House服务器配置文件
#1、修改config.xml文件权限
chmod u+w /etc/clickhouse-server/config.xml
#2、修改端口和绑定地址
vi /etc/clickhouse-server/config.xml
<tcp_port>9000</tcp_port>的配置项,将默认值9000
<listen_host>::</listen_host>的配置项取消注释,这样就同时支持IPv4和IPv6了
问题2:
Port 9000 is for clickhouse-client program You must use port 8123 for HTTP. , server ClickHouseNode
解决方法:
端口 9000 用于 clickhouse-client 程序 您必须使用端口 8123 进行 HTTP
访问端口改为8123