Dify web前端源碼本地部署詳細教程

目錄

1. 先啟動API

2. 啟動worker服務

3. 啟動web

4. 訪問登陸地址


在前面的文章中,Dify源碼部署,搭建二次開發環境(一)

已經記錄了如何在本地啟動API、work、中間件。在本篇文章中,將概述如何啟動dify web源碼項目。關于如何源碼啟動API、work、中間件的步驟,請自行查看 :Dify源碼部署,搭建二次開發環境(一)

1. 先啟動API

cd dify\api,執行命令

dify\api>flask run --host?0.0.0.0?--port=5001?--debug

顯示如下日志,表示啟動成功:?????

*?Running?on?all?addresses?(0.0.0.0)* Running?on?http://127.0.0.1:5001* Running?on?http://192.168.1.162:5001

2. 啟動worker服務

cd dify\api,執行命令

uv run celery -A?app.celery?worker -P?solo?--without-gossip?--without-mingle?-Q?dataset,generation,mail,ops_trace?--loglevel?INFO

3. 啟動web

檢查依賴的基礎環境:

{??"name":?"dify-web",??"version":?"1.4.2",??"private":?true,??"engines":?{? ??"node":?">=v22.11.0"??}

結合`package.json` 文件的內容,構建web項目的要求相關信息如下:

(1)直接使用 npm install 安裝依賴 文件中包含 preinstall 腳本: "preinstall": "npx only-allow pnpm" ,

? ?因此需要使用 pnpm ,如果嘗試使用 npm install,將會失敗。

(2)Node.js 版本要求 文件中明確指定了 Node.js 版本要求: "node": ">=v22.11.0" ,即需要使用 Node.js 22.11.0 或更高版本。

(3)npm 版本項目沒有明確指定 npm 的版本要求。由于 Node.js 通常會捆綁特定版本的 npm,只要使用符合要求的 Node.js 版本 (>=22.11.0),其附帶的 npm 版本基本可以滿足需求。

表明構建該項目,使用的node版本需要 >=22.11

檢查服務器node版本:

node?-vv22.13.1
 

安裝依賴:

cd?webpnpm install --registry=https://registry.npmmirror.com

執行結果:

Lockfile?is?up?to?date, resolution step?is?skippedAlready up?to?date? ?╭──────────────────────────────────────────╮? ?│ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?│? ?│ ??Update?available!?10.12.4?→?10.14.0. ? │? ?│ ? Changelog: https://pnpm.io/v/10.14.0? ?│? ?│ ? ??To?update, run: pnpm?add?-g pnpm ? ? │? ?│ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?│? ?╰──────────────────────────────────────────╯╭ Warning ───────────────────────────────────────────────────────────────────────────────────╮│ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?││ ? Ignored build scripts:?@parcel/watcher, canvas, core-js-pure, esbuild, sharp. ? ? ? ? ? ?││ ? Run "pnpm approve-builds"?to?pick which dependencies should be allowed?to?run scripts. ? ││ ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?│╰────────────────────────────────────────────────────────────────────────────────────────────╯>?dify-web@1.4.2?prepare?D:\1.4.2\dify\web>?cd ../?&&?node?-e "if (process.env.NODE_ENV !== 'production'){process.exit(1)} "?||?husky ./web/.huskyDone?in?11.2s?using?pnpm v10.12.4

結果分析:

根據上述執行日志,**pnpm install**?命令已經**成功執行**。以下是詳細分析:1.?**成功標志**:? ?- 命令最后顯示?`Done in 11.2s using pnpm v10.12.4`,明確表示安裝過程完成。? ?- 中間提示?`Lockfile is up to date, resolution step is skipped`?和?`Already up to date`?表明依賴已安裝且為最新版本,無需額外更新。2.?**其他信息**(非錯誤):? ?-?**pnpm 版本更新提示**:顯示有新版本?`10.14.0`?可用,但這只是建議升級,不影響當前安裝。? ?-?**構建腳本警告**:提示忽略了部分依賴的構建腳本(如?`@parcel/watcher`、`canvas`?等),這是安全機制。若需要允許這些腳本運行,可執行?`pnpm approve-builds`。? ?-?**prepare 腳本執行**:項目的?`prepare`?腳本正常執行,用于設置 Husky( Git 鉤子工具)。總體而言,依賴安裝過程順利完成,沒有遇到錯誤。

構建項目(git bash)

cd dify/web ,執行

pnpm?build

??

??

啟動項目(git bash)

cd dify/web ,執行

pnpm?start
--?執行日志?cp?-r .next/static .next/standalone/.next/static?&&?cp?-r?public?.next/standalone/public?&&?cross-env?PORT=$npm_config_port?HOSTNAME=$npm_config_host?node .next/standalone/server.js? ?鈻??Next.js?15.2.3? ?-?Local: ? ? ? ?http://localhost:3000? ?-?Network: ? ? ?http://0.0.0.0:3000?鉁??Starting...?鉁??Ready?in?1017ms

4. 訪問登陸地址

??

??

歡迎WX搜索??南and北?,獲得更多內容,留言交流!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/919321.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/919321.shtml
英文地址,請注明出處:http://en.pswp.cn/news/919321.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

CVPR 2025|英偉達聯合牛津大學提出面向3D醫學成像的統一分割基礎模型

在 2D 自然圖像和視頻的交互式分割領域,基礎模型已引發廣泛關注,這也促使人們開始構建用于醫學成像的 3D 基礎模型。然而,3D 醫學成像存在的領域差異以及臨床應用場景,要求開發一種有別于現有 2D 解決方案的專用模型。具體而言&am…

解決“Win7共享文件夾其他電腦網絡無法發現共享電腦名稱”的問題

要讓運行 Windows 7 的電腦被局域網中其他設備(包括另一臺電腦、手機、NAS 等)“發現”,必須同時滿足三個條件: 網絡發現功能已啟用;對應的后臺服務已啟動;防火墻規則放行。 下面給出最簡、最穩妥的 3 步設…

Python pyzmq 庫詳解:從入門到高性能分布式通信

一、前言 在現代軟件開發中,進程間通信(IPC)與分布式系統通信已經成為基礎能力。無論是構建一個微服務架構的后端,還是實現大規模并行計算任務,如何讓不同的進程或節點之間高效地傳遞消息,都是核心問題。 傳…

CentOS 7更換國內鏡像源

第一步:檢查系統版本 在修改任何配置之前,先確定你的 CentOS 版本,因為不同版本的鏡像源配置文件不同。 cat /etc/redhat-release這個命令會顯示你的 CentOS 版本信息,例如 CentOS Linux release 7.9.2009 (Core)。從你的錯誤日志…

詳解 doclayout_yolo:Python 文檔布局檢測

目錄一、doclayout_yolo 核心功能二、安裝方法1. 直接安裝2. 通過 PDF-Extract-Kit 安裝三、使用示例1. 快速體驗(HuggingFace Demo)2. 本地推理代碼3. 批量處理四、技術亮點五、應用場景六、其他說明1.相關資源2. 注意事項doclayout_yolo 是一個基于 Y…

貓頭虎AI分享|一款Coze、Dify類開源AI應用超級智能體Agent快速構建工具:FastbuildAI

貓頭虎AI分享|一款 Coze、Dify 類開源 AI 應用超級智能體快速構建工具:FastbuildAI 區別在于它的易用度和商業閉環功能 摘要:FastbuildAI 是一個開源的 AI 應用“快速構建 商業化閉環”工具。它讓個人開發者與小團隊用 可視化 零代碼 的方…

GitLab 安全漏洞 CVE-2025-6186 解決方案

本分分享極狐GitLab 補丁版本 18.2.2, 18.1.4, 18.0.6 的詳細內容。這幾個版本包含重要的缺陷和安全修復代碼,我們強烈建議所有私有化部署用戶應該立即升級到上述的某一個版本。對于極狐GitLab SaaS,技術團隊已經進行了升級,無需用戶采取任何…

【K8s】harbor安裝與推送鏡像

引言 在開發中,先推送鏡像到docker,然后直接在docker運行。但是在K8S中,需要動態創建或者分配機器,這里需要將鏡像推送到harbor倉庫,然后再從倉庫拉取到每臺集群機器。 docker安裝harbor:https://learnku…

FPGA讀取AHT20溫濕度模塊思路及實現,包含遇到的問題(IIC協議)

一.閱讀官方手冊 手冊在下方網址下載,該模塊在各個網店平臺均有銷售 百度網盤 請輸入提取碼 手冊重點關注IIC地址(讀地址0x71,寫地址0x70)、IIC命令和讀寫數據邏輯,手冊寫的比較簡單(感覺很多細節沒到位…

項目會議怎么開才有效

要提高項目會議的有效性,需要做到以下幾點:明確會議目的、制定具體的會議議程、合理控制會議時長、提前準備會議資料、選擇合適的參會人員、設定清晰的會議目標、確保會議有決策和行動方案、會后及時跟進與落實。其中,明確會議目的尤為重要。…

計算機視覺第一課opencv(二)保姆級教

目錄 簡介 一、邊界填充 1.函數說明 2.案例分析 二、圖像運算 1.號運算 2.cv2.add()函數 3.圖像加權運算 三、閾值處理 四、圖像平滑處理 1.椒鹽噪聲 2.均值濾波(Mean Filtering) 3.方框濾波 4. 高斯濾波(Gaussian Filtering&am…

母豬姿態轉換行為識別:計算機視覺與行為識別模型調優指南

> 在現代智能化養殖中,母豬姿態識別是健康監測的關鍵技術。本文將帶你從0到1構建高精度母豬姿態識別系統,準確率可達95%以上! ## 一、為什么母豬姿態識別如此重要? 母豬的行為姿態是其健康狀況的重要指標: - **站立姿態**:可能表示發情期或進食需求 - **側臥姿態**:…

循序漸進學 Spring (下):從注解、AOP到底層原理與整合實戰

文章目錄7. 自動裝配 (Autowiring)7.1 XML 自動裝配7.2 使用注解實現自動裝配Autowired vs Resource8. 使用注解開發(完全體)8.1 定義 Bean (Component 及其衍生注解)8.2 注入屬性 (Value)8.3 注入對象8.4 定義作用域 (Scope)8.5 小結:XML vs…

C#WPF實戰出真汁06--【系統設置】--餐桌類型設置

1、系統設置的基本概念系統設置是用于配置和管理餐桌類型和菜品類型,是維護整個系統的基礎數據。通過系統設置,用戶可以調整餐桌類型的添加,刪除,編輯,分頁,查詢,重置,列表&#xff…

旋鈕鍵盤項目---foc講解(閉環位置控制)

hello,周六休息了一天,出去打本了。趁著夜色,花費了幾個小時,也是將閉環代碼寫完,參考了燈哥的思路。接下來介紹一下我的整個流程: 一、閉環位置控制思路: 其實懂得了開環,那么閉環…

為什么有些相機“即插即用”,而有些則需要采集卡?

在工業生產中,工業相機是“眼睛”,它幫助我們看到世界,但你知道嗎?不同的工業相機接口就像不同的“通道”,有些“通道”直接就能與計算機連接,而有些則需要一個額外的小配件——圖像采集卡。那么&#xff0…

【計算機網絡 | 第7篇】物理層基本概念

文章目錄物理層基本概念及數據通信系統解析一、物理層的核心定位🥝二、物理層的功能🧾三、數據通信系統的模型🐦?🔥(一)源系統(二)傳輸系統(三)目的系統四、…

一般情況下,python函數都會返回對象,但有時只調用一個函數,這是在修改這個信息

class Model:def __init__(self):self.training Truedef eval(self):self.training Falsereturn Nonem Model() print(m.training) # True m.eval() # 返回 None print(m.training) # False,模型內部狀態已改變m.eval()是在修改m的…

2025-08-17 李沐深度學習17——語義分割

文章目錄1 語義分割1.1 介紹1.2 語義分割應用1.3 實例分割2 轉置卷積2.1 工作原理2.2 為什么叫“轉置”卷積2.3 轉置卷積也是一種卷積3 FCN3.1 核心思想3.2 網絡架構4 樣式遷移4.1 基于 CNN 的樣式遷移4.2 工作流程1 語義分割 1.1 介紹 語義分割(Semantic Segment…

《若依》權限控制

若依內置了強大的權限控制系統,為企業級項目提供了通用的解決方案 以CRM系統為例,演示權限功能(URL:https://huike-crm.itheima.net) demo賬號(超級管理員)查看所有功能菜單 zhangsan賬號(市…