--- date: "2016-12-21T15:00:00-02:00" slug: "windows-service" sidebar_position: 50 aliases: - /zh-tw/windows-service --- # 註冊為 Windows 服務 ## 先決條件 在 C:\gitea\custom\conf\app.ini 中進行以下更改: ```ini title="app.ini" RUN_USER = COMPUTERNAME$ ``` 將 Gitea 設置為以本地系統用戶身份運行。 COMPUTERNAME 是命令行中 `echo %COMPUTERNAME%` 的響應。如果響應是 `USER-PC`,則 `RUN_USER = USER-PC$` ### 使用絕對路徑 如果您使用 SQLite3,請更改 `PATH` 以包含完整路徑: ```ini title="app.ini" [database] PATH = c:/gitea/data/gitea.db ``` ## 註冊 Gitea 要將 Gitea 註冊為 Windows 服務,請以管理員身份打開命令提示符 (cmd), 然後運行以下命令: ```sh sc.exe create gitea start= auto binPath= "\"C:\gitea\gitea.exe\" web --config \"C:\gitea\custom\conf\app.ini\"" ``` 不要忘記將 `C:\gitea` 替換為正確的 Gitea 目錄。 打開“Windows 服務”,搜索名為“gitea”的服務,右鍵單擊它並單擊 “運行”。如果一切正常,Gitea 將在 `http://localhost:3000`(或配置的端口)上可訪問。 ### 服務啟動類型 觀察到在加載系統期間啟動時,Gitea 服務可能會在 Windows 事件日誌中記錄超時並且無法啟動。 在這種情況下,將啟動類型更改為“自動延遲”。這可以在服務創建期間完成,也可以通過運行配置命令完成 ```sh sc.exe config gitea start= delayed-auto ``` ### 添加啟動依賴項 要向 Gitea Windows 服務添加啟動依賴項(例如 Mysql、Mariadb),請以管理員身份運行以下命令: ```sh sc.exe config gitea depend= mariadb ``` 這將確保當 Windows 機器重新啟動時,Gitea 的自動啟動將推遲到數據庫準備就緒,從而減少啟動失敗。 ## 註銷 Gitea 要將 Gitea 註銷為 Windows 服務,請以管理員身份打開命令提示符 (cmd) 並運行: ```sh sc.exe delete gitea ```