Redash是一款开源的BI工具,提供了基于web的数据库查询和数据可视化功能。Redash可以轻松地集成Presto/OpenLK
使用Docker-Compose搭建Redah服务器
参考资料:https://github.com/getredash/setup
创建docker-compose使用的配置文件
mkdir /opt/redash
vi /opt/redash/env
env文件内容如下所示
PYTHONUNBUFFERED=0
REDASH_LOG_LEVEL=INFO
REDASH_REDIS_URL=redis://redis:6379/0
POSTGRES_PASSWORD=password1!
REDASH_COOKIE_SECRET=password1!
REDASH_SECRET_KEY=password1!
REDASH_DATABASE_URL=postgresql://postgres:password1!@postgres/postgres
docker-compose文件
注意这里使用80端口暴露http服务,请检查服务器的80端口是否已经被占用,如果被占用需要修改docker-compose文件中的端口号
version: "2"
x-redash-service: &redash-service
image: redash/redash:8.0.0.b32245
depends_on:
- postgres
- redis
env_file: /opt/redash/env
restart: always
services:
server:
<<: *redash-service
command: server
ports:
- "5000:5000"
environment:
REDASH_WEB_WORKERS: 4
scheduler:
<<: *redash-service
command: scheduler
environment:
QUEUES: "celery"
WORKERS_COUNT: 1
scheduled_worker:
<<: *redash-service
command: worker
environment:
QUEUES: "scheduled_queries,schemas"
WORKERS_COUNT: 1
adhoc_worker:
<<: *redash-service
command: worker
environment:
QUEUES: "queries"
WORKERS_COUNT: 2
redis:
image: redis:5.0-alpine
restart: always
postgres:
image: postgres:9.6-alpine
env_file: /opt/redash/env
volumes:
- /opt/redash/postgres-data:/var/lib/postgresql/data
restart: always
nginx:
image: redash/nginx:latest
ports:
- "80:80"
depends_on:
- server
links:
- server:redash
restart: always
创建PostgreSQL数据库
docker-compose run --rm server create_db
启动Redash
docker-compose up -d
访问Redash web UI
http://host:port
注册一个新用户

创建与OpenLK/Presto的连接
点击Connect链接

选择Presto

填写连接参数
OpenLK的默认端口是8090,如果在OpenLK安装时修改了端口,需要填写相应的端口号

测试连接

创建SQL(点击Create链接)
