Go
部署一個附帶獨立資料庫初始化執行檔的 Go 應用程式。
假設的專案結構
- 應用程式伺服器:
go/main.go→ 建置為out/app - 資料庫初始化程式:
cmd/db/main.go→ 建置為out/db - Setup 會建置這兩個執行檔;啟動前指令執行
out/db來初始化 schema;啟動指令則啟動伺服器
部署指令
| 欄位 | 值(範例) |
|---|---|
| Setup 指令 | go build -trimpath -ldflags='-s -w' -o out/app ./go;go build -trimpath -ldflags='-s -w' -o out/db ./cmd/db |
| 啟動前指令 | out/db |
| 啟動指令 | out/app |
所有指令都會從儲存庫根目錄執行。
環境變數
系統預設會設定 PORT 環境變數。你的應用程式應該使用這個值作為監聽的連接埠。
建立應用程式時若選擇了資料庫,以下變數也會自動設定:
DB_HOST、DB_PORT、DB_NAME、DB_USER、DB_PASSWORDDATABASE_URL— 完整的連線字串
範例應用程式
可參考範例應用程式:kamui-project/go-starter