您需要預備 Redis、PostgreSQL 和 Google OAuth 的憑證。
docker run -it --rm --name dp-redis -d redis
docker run -it --rm --name dp-postgres -e POSTGRES_PASSWORD=databaseplayground -d postgres
docker run -it --name dp-sqlrunner -p 8080 ghcr.io/database-playground/sqlrunner-v2:main
REDIS_HOST=dp-redis.orb.local
REDIS_PORT=6379
DATABASE_URI=postgres://postgres:[email protected]:5432/postgres
您需要根據 環境變數設定 的說明設定必要的變數,可以將此類變數寫入 .env
。
接著,使用 admin-cli 來初始化資料庫欄位(不需要事先啟動 backend):
go run ./cmd/admin-cli setup
接著到前端使用「Google 登入」建立好使用者後,將這個使用者提升為管理員:
go run ./cmd/admin-cli promote-admin --email "[email protected]"
即可初始化完成。
您需要先產生一組 TLS 金鑰並在 .env
定義,請參見 組態設定說明。
定義完成後,執行:
go run ./cmd/backend
會在 localhost:8080
啟動 HTTPS 的伺服器。
生產模式中需要指定 GIN_MODE=release
。
您需要安裝 Docker 才能執行測試。
go test -v ./...
如果您更動了 GraphQL 或 ent schema,也需要重新產生程式碼:
go generate ./...
Linting & Formatting:
golangci-lint run
gofumpt -w .