前置环境
  • docker
  • docker-compose
  • nodejs
拉取代码
  • 通过git目录拉取代码
git clone https://github.com/getredash/redash.git
  • 进入redash目录
  • 编辑docker-compose.yml文件
  • 修改文件内容
  1. 其中需要将redash服务镜像版本和worker镜像的版本改成redash/redash:3.0.0.b2998,默认是lastest,如果是最新版本,查询数据内容的时候会导致无法查询出内容,日志报错Invalid-Token等相关信息.
  2. REDASH_COOKIE_SECRET内容改成你的密码,这里我不太理解设置成什么密码,所以就随便输入了一串数字,目前感觉没有什么作用。
  3. ngninx端口避免和当前机器上的端口冲突,我这里用7788映射80端口
version: '2'
services:
  server:
    image: redash/redash:3.0.0.b2998
    command: server
    depends_on:
      - postgres
      - redis
    ports:
      - "5000:5000"
    environment:
      PYTHONUNBUFFERED: 0
      REDASH_LOG_LEVEL: "INFO"
      REDASH_REDIS_URL: "redis://redis:6379/0"
      REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres"
      REDASH_COOKIE_SECRET: "123456"
      REDASH_WEB_WORKERS: 4
  worker:
    image: redash/redash:3.0.0.b2998
    command: scheduler
    environment:
      PYTHONUNBUFFERED: 0
      REDASH_LOG_LEVEL: "INFO"
      REDASH_REDIS_URL: "redis://redis:6379/0"
      REDASH_DATABASE_URL: "postgresql://postgres@postgres/postgres"
      QUEUES: "queries,scheduled_queries,celery"
      WORKERS_COUNT: 2
  redis:
    image: redis:3.0-alpine
  mongodb:
    image: mongo:3.2
    ports:
    - "27017:27017"
  click:
     image: yandex/clickhouse-server
     ports:
     - "8123:8123"
     - "9000:9000"
     - "9009:9009"
     ulimits:
      nproc: 65535
      nofile:
       soft: 262144
       hard: 262144
  postgres:
    image: postgres:9.5.6-alpine
    ports:
    - "5432:5432"
    # volumes:
    # - /opt/postgres-data:/var/lib/postgresql/data
  nginx:
    image: redash/nginx:latest
    ports:
      - "7788:80"
    depends_on:
      - server
    links:
      - server:redash
初始化数据库
docker-compose run --rm server create_db
启动docker-compose
  • 后台启动方式(不加-d可以查看实时日志)
docker-compose up -d
使用
  • 浏览器访问:{host}:{nginx暴露端口}/setup
    在这里插入图片描述
    eg:localhost:7788/setup
  • 创建数据源
    在这里插入图片描述
  • 创建查询
    在这里插入图片描述
  • 创建可视化图标
    在这里插入图片描述
扩展
  • 停止服务
docker-compose down
  • 重新启动docker-compose,docker-compose.yml文件配置会失效,所以需要重新初始化数据库操作。

遇到的问题

  • Invalid Token 无效token 最新版本的redash造成的,需要降低redash版本。
  • 重新启动失败,需要重新格式化数据库
Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐