Windows环境部署开发Redash 最新版


1.为什么要标明是Windows环境

  1. 因为我习惯windows环境开发
  2. Redash的源码开发环境为linux下,在windows上运行源码会有水土不服的情况。
  3. linux下也可以看这个文。

2.Redash超简单介绍

前端部分

  1. 基于Webpac构建的angualr1.6单页面应用,可单独由Node启动,也可编译后,作为静态资源文件由python-Web使用。

服务端部分

  1. 站点采用Flask框架开发;Flask是一个Python中轻量级的Web应用框架,需单独启动WEB服务。
  2. 使用Redis+Celery作为分布式消息任务系统,需单独启动Celery服务和Redis服务。
  3. 使用Postgresql对象数据库存储数据,需启动Postgresql服务。

3.Redash开始部署

3.1 前端部分

	# 1:进入Redash文件夹根目录,即package.json同目录层
	# 2:安装需要包 这里非常容易出错,建议cnpm>yarn>npm尝试,需要install后没有提示error。
	cnpm install  或者 yarn install 或者 npm install 
	# 3:启动项目,建议先build一次,使得python服务端独立启动时也能正常使用。
	npm build (这里会各种报错!)
	
错误开始:
	1: rm -rf指令找不到
	因为:windows下不支持linux删除文件夹的指令。改用 rd /s /q 指令
	/
	2:NODE_DEV找不到
	需安装 npm install cross-env后 在NODE_ENV 前面加上 cross-env
	/
	3:node_modules\.bin\webpack:2
	basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')")
	SyntaxError: missing ) after argument list
	/
	因为windows下指令原因,也无法使用。需改造。
	```
###### 最后package.json应长这样(需先 npm install cross-env)
{
	 "scripts": {
		"clean": "rd /s /q \"client/dist\"",
		"build": "npm run clean && cross-env NODE_ENV=production webpack --progress --hide-modules --config webpack.config.js",
	  },
}
注意:如果采用jenkies等远端编译发布形式,需注意操作系统哦。

###### 运行:
	npm run start (启动8080)


#### 3.2 服务端部分:
##### 1.建议创建基于PY2.7的虚拟环境。
> 此步骤可省略,如果当前环境以及是py2.7

1:通过PyCharm创建 (但是Pycharm收费,我用VSCode,所以这个方法我不推荐。)可以通过 https://blog.csdn.net/weixin_42273374/article/details/84398006 查看办法。
**注意:该文章从调试章节起,我没有使用成功**

2:使用aconda。百度即可。

###### 2.安装依赖包 
> 此步骤建议全部安装,免得后期麻烦

	pip install -r requirements.txt -r requirements_all_ds.txt -r requirements_dev.txt -r  requirements_dev.txt

###### 3.数据源配置
>因操作系统原因,无法直接使用.env做环境变量配置,所以直接在代码中修改默认值即可。

修改默认py文件: ./redash/setting/__init__.py中
	#line:27 修改postgresql链接串
	SQLALCHEMY_DATABASE_URI = os.environ.get("REDASH_DATABASE_URL", os.environ.get('DATABASE_URL', "postgresql://postgres:123456@127.0.0.1:5432/redash"))
	#line:18 修改redis链接串
	REDIS_URL = os.environ.get('REDASH_REDIS_URL', os.environ.get('REDIS_URL', "redis://localhost:6379/0"))
	
###### 4.检查变量配置
> 如遇到byte_type不存在问题,直接注释即可

	python ./manage.py check_settings

###### 5.创建数据库表
	python ./manage.py database create_tables
###### 6.启动 WEB服务
	python ./manage.py runserver --debugger --reload
###### 7.启动任务队列服务
> celery的版本在4.0后,不支持windows操作系统。可参考https://www.distributedpython.com/2018/08/21/celery-4-windows/

	#执行
	celery worker --app=redash.worker --pool=eventlet -Qscheduled_queries,queries,celery -c2
### 运行效果:
>会现有一个step界面,输入完用户名和密码后即可
![](https://img2018.cnblogs.com/blog/659580/201903/659580-20190315172522686-543368591.png)


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM