跳到內容

Git 部署

Git 部署是最常用的部署方式。你只需要將 GitHub 或 GitLab 倉庫連接到 Piora,之後每次推送程式碼就會自動觸發建置與部署。

  • GitHub — 公開與私有倉庫
  • GitLab — 公開與私有倉庫(包含自架 GitLab)
  1. 在 Piora 控制面板中建立新的應用
  2. 選擇「Git 倉庫」作為部署來源
  3. 授權 Piora 存取你的 GitHub / GitLab 帳號
  4. 選擇要部署的倉庫與分支
  5. 設定建置參數(大多數情況自動偵測即可)

Piora 的 Nixpacks 建置工具能自動偵測大多數專案的語言和框架:

語言/框架偵測依據
Node.jspackage.json
Pythonrequirements.txt / Pipfile / pyproject.toml
RubyGemfile
Gogo.mod
RustCargo.toml
PHPcomposer.json
Javapom.xml / build.gradle

如果自動偵測不符合需求,你可以手動設定:

Terminal window
# 建置指令
npm run build
# 啟動指令
npm start
# 安裝指令(選填)
npm ci --production

如果你的專案根目錄有 Dockerfile,可以選擇使用 Dockerfile 建置:

FROM node:20-alpine AS builder
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
FROM node:20-alpine
WORKDIR /app
COPY --from=builder /app/dist ./dist
COPY --from=builder /app/node_modules ./node_modules
EXPOSE 3000
CMD ["node", "dist/index.js"]

預設情況下,對指定分支的每次 git push 都會自動觸發部署:

Terminal window
# 推送到 main 分支會自動觸發部署
git push origin main

Piora 會自動在你的 Git 倉庫中設定 Webhook。如果需要手動設定,Webhook URL 格式為:

https://app.piora.dev/api/webhook/git/{app-id}

每次部署的建置日誌都可以在控制面板中查看,包含:

  • 原始碼拉取進度
  • 依賴套件安裝過程
  • 建置指令輸出
  • 映像打包資訊
  • 部署狀態與錯誤訊息

如果部署後發現問題,你可以快速回滾到之前的版本:

  1. 進入應用的「部署歷史」頁面
  2. 選擇要回滾的版本
  3. 點選「回滾到此版本」

Piora 會保留最近的部署版本,讓你隨時可以快速回滾。