คำอธิบาย Environment Variables

ตารางอ้างอิง Environment Variables ทั้งหมดที่ใช้ใน npm run setup

💡 Tip: คอลัมน์ “หัวข้อ” คือข้อความที่จะปรากฏใน terminal เมื่อรัน npm run setup


Step 1: Google OAuth

หัวข้อตัวแปรคำอธิบายดูวิธีตั้งค่า
Google Client IDGOOGLE_CLIENT_IDOAuth Client ID จาก Google Cloud ConsoleGoogle Cloud OAuth
Google Client SecretGOOGLE_CLIENT_SECRETOAuth Client Secret จาก Google Cloud ConsoleGoogle Cloud OAuth

Step 2: NextAuth Configuration

หัวข้อตัวแปรคำอธิบายดูวิธีตั้งค่า
Your app URLNEXTAUTH_URLURL หลักของ applicationตั้งตามสภาพแวดล้อม (ดูตารางด้านล่าง)
Session secret (auto-generated)NEXTAUTH_SECRETSecret key สำหรับเข้ารหัส session– สร้างอัตโนมัติผ่าน GitHub Codespaces
– สร้างด้วยคำสั่ง openssl rand -base64 32
– สร้างด้วยโปรแกรม รหัสจากการสุ่ม (HEX 32)

ค่า NEXTAUTH_URL ตามสภาพแวดล้อม

สภาพแวดล้อมค่าที่ต้องใส่หมายเหตุ
Cursor IDE (Local)http://localhost:3000
Codespaceshttps://<codespace-name>-3000.app.github.devดูจาก URL ที่ Codespaces เปิดให้
Railway (Production)https://<app-name>.up.railway.appหรือ custom domain ถ้ามี

Step 3: Database

หัวข้อตัวแปรคำอธิบายดูวิธีตั้งค่า
PostgreSQL connection stringDATABASE_URLConnection string สำหรับเชื่อมต่อ PostgreSQLSupabase
Direct URL for migrationsDIRECT_URLConnection string แบบ direct (ไม่ผ่าน connection pooler)Supabase

💡 หมายเหตุ: ถ้าใช้ Codespaces ไม่จำเป็นต้องตั้งค่า Database เพราะมี PostgreSQL ในตัวอยู่แล้ว


Step 4: Cloud Storage (Optional)

หัวข้อตัวแปรคำอธิบายดูวิธีตั้งค่า
Storage ProviderSTORAGE_PROVIDERเลือก “Google Cloud Storage”
Bucket nameGCS_BUCKETชื่อ bucket ที่สร้างไว้ใน GCSGoogle Cloud Storage
Project IDGCS_PROJECT_IDProject ID จาก Google CloudGoogle Cloud Storage
Service Account JSONGCS_CREDENTIALSService Account credentials ในรูปแบบ JSONGoogle Cloud Storage

สรุป

หมวดตัวแปรที่จำเป็น
Google OAuthGOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRET
NextAuthNEXTAUTH_URLNEXTAUTH_SECRET
DatabaseDATABASE_URLDIRECT_URL
StorageSTORAGE_PROVIDERGCS_BUCKETGCS_PROJECT_IDGCS_CREDENTIALS