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