很多人,包括我在最初使用dify的時候都習慣使用docker來部署安裝環境,但在二次開發使用過程中,我們可能希望使用源碼來安裝,那么這篇文章我將給大家分享如何在ubuntu系統下使用源碼安裝,并提供大家遇到的疑難雜癥如下:
dify安裝使用過程中報錯:/console/api/workspaces/current/plugin/tasks?page=1&page_size=100 返回400錯誤
相信這個問題已經困擾了眾多開發者,而且github上很多人聊的天花亂墜,包括我試圖從github上尋找答案也未果,最終我通過閱讀源碼,從源碼中找到了答案。
目錄
1.安裝步驟
下載源碼
安裝一些中間件容器
安裝API服務
uv安裝依賴的報錯處理
啟動api服務:
啟動任務服務:
安裝web服務:
登錄
異常報錯
1.Expecting value:line 1 column 1 (chat 0)
1.安裝步驟
下載源碼
git clone https://github.com/langgenius/dify.git
我建議使用1.3.0,修復了一些bug(如果后邊有更新的release版本,建議大家使用最新的版本即可)
git checkout 1.3.0
安裝一些中間件容器
源碼下載到本地后,我們進入到docker目錄下
然后使用命令:
cp middleware.env.example middleware.env
這里編輯中間件服務器的ip,端口,用戶名和密碼等參數
postgres的端口是5432
redis的端口是6379
plugin_daemon的端口5002-5003
ssrf_proxy的端口是3128,8194
如果你的端口沒有被其他進程服務占用,你基本上不用修改任何參數
接下來就是docker鏡像和容器化環境的打包制作
docker compose -f docker-compose.middleware.yaml --profile weaviate -p dify up -d
部署好之后,查看容器:
如果有某個容器沒有起來,請查看日志,看下是否有端口被占用的情況,你可以重新修改 docker-compose.middleware.yaml里的映射端口信息。
安裝API服務
進入到api路徑下
復制一份配置文件:
cp .env.example .env
然后修改API服務中驗簽用到的SECRT_KEY