- release
安装临时插件
apt-get update
apt-get install git
git clone https://github.com/yourwilliam/redash
$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade virtualenv
换源
1.临时换源
临时换源只在某一条命令中生效,只要在命令中加上”-i“,指定使用的源即可
pip install scrapy -i
2.永久换源
要是想彻底将pip的源换掉,只要在pip的配置文件(~_.pip_pip.conf)中增加
[global]
index-url=http://pypi.douban.com/simple
3.一些国内的pip源
http://pypi.douban.com/simple #豆瓣
http://pypi.hustunique.com/simple #华中理工大学
http://pypi.sdutlinux.org/simple #山东理工大学
http://pypi.mirrors.ustc.edu.cn/simple #中国科学技术大学
pip 测试可用的换源方式,一定要使用这一个,而且一定要用https
pip install wagtail -i https://pypi.douban.com/simple
初步安装
root@ubuntu:/opt/redash# virtualenv redashenv
root@ubuntu:/opt/redash# source redashenv/bin/activate
(redashenv) root@ubuntu:/opt/redash# sudo apt-get install libpq-dev
(redashenv) root@ubuntu:/opt/redash/setup/ubuntu# cd /opt/
(redashenv) root@ubuntu:/opt# chmod 777 redash/
(redashenv) root@ubuntu:/opt/redash/setup/ubuntu# sh bootstrap.shd
会报一个这个错
Creating redash postgres user & database.
Traceback (most recent call last):
File "_opt_redash_redash.0.11.1.b2095_manage.py", line 7, in
from flask_script import Manager
ImportError: No module named flask_script
修改
vi /opt/redash/redash.0.11.1.b2095/manage.py
#!/opt/redash/redashenv/bin/python
再次执行安装
还会报一个错:
peewee.ProgrammingError: relation "organizations" does not exist
LINE 1: ...", "t1"."name", "t1"."slug", "t1"."settings" FROM "organizat…
要重新配置数据库
(redashenv) root@ubuntu:/opt/redash/setup/ubuntu# su - postgres
psql
ostgres=# drop database redash;
DROP DATABASE
postgres=# drop user redash;
DROP ROLE
退出 继续安装
在起一次就能成功了,显示
2016-11-20 14:47:08 (68.7 MB_s) - ‘_etc_nginx_sites-available/redash’ saved [453/453]
* Restarting nginx nginx [ OK ]
就OK了。
修改数据库权限
创建root 用户,给予权限
(redashenv) root@ubuntu:/opt/redash/setup/ubuntu# su - postgres
postgres@ubuntu:~$ psql
postgres=# create user root;
postgres=# ALTER ROLE root SUPERUSER;
ALTER ROLE
启动redash_server
还是会报错:
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# mkdir /opt/redash/logs
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# supervisord -c /opt/redash/setup/ubuntu/files/supervisord.conf
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# mkdir /opt/redash/logs
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# supervisord -c /opt/redash/setup/ubuntu/files/supervisord.conf
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# supervisorctl restart redash_server
redash_server: stopped
redash_server: started
维护redash参考 http://docs.redash.io/en/latest/usage/maintenance.html
这还没完
仔细研究了一下,从脚本可以看到 ,是用的redash的账号来启动的。 这里我的安装是改成了使用root来控制。
后面在来研究怎么样用redash账号搞定。
在执行restart all的时候可以看到实际上可以看到redash_celery 是没有起起来的,这样可以看到的结果是感觉redash可以登陆,可以添加使用,但是数据是查不出来的,随便执行一个QUERY就可以看到。这是要控制celery的话需要再配置
从报错可以看到
Running a worker with superuser privileges when the
worker accepts messages serialized with pickle is a very bad idea!
If you really want to continue then you have to set the C_FORCE_ROOT
environment variable (but please think about this before you do).
User information: uid=0 euid=0 gid=0 egid=0
就是celery不推荐使用root来执行,需要修改
网上有几种办法,一种是使用 export C_FORCE_ROOT=‘true’ 这种是不管用的
另外一种是添加
platforms.C_FORCE_ROOT = True #添加这一行
这个是可以的,需要把这个添加的work中
vi _opt_redash_redash.0.11.1.b2095_redash/worker.py
http://redn.net/content/解决celery在root用户下启动问题cforceroot-environment
然后再执行:
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# supervisorctl restart all
redash_server: stopped
redash_celery: started
redash_server: started
redash_celery_scheduled: started
测试后方可。
至此ubuntu版本的全部安装完毕
邮件配置:
在.env环境中配置 _opt_redash/.env 中
export REDASH_STATIC_ASSETS_PATH="../rd_ui/dist/"
export REDASH_LOG_LEVEL="INFO"
export REDASH_REDIS_URL=redis://localhost:6379/0
export REDASH_DATABASE_URL="postgresql://redash"
export REDASH_COOKIE_SECRET=veryverysecret
export REDASH_MAIL_SERVER="smtp.hansap.com"
export REDASH_MAIL_PORT="25"
export REDASH_MAIL_USE_TLS="false"
export REDASH_MAIL_USE_SSL="false"
export REDASH_MAIL_USERNAME="hansap@hansap.com"
export REDASH_MAIL_PASSWORD="Fire@123"
export REDASH_MAIL_DEFAULT_SENDER="hansap@hansap.com"
export ERDASH_HOST="http://bi.hansap.com"
配置完成后可以测试
(redashenv) root@ubuntu:/opt/redash/current# bin/run ./manage.py send_test_mail
注意一定要在current下测试,而且一定要按照这个目录来执行。
执行完成后重启
(redashenv) root@ubuntu:/opt/redash/redashenv/bin# supervisorctl restart all
配置完成
新版本
需要在全局路径(非virtualENV环境下装上redis依赖包才可以 'pip install redis')