feat(dev): hybrid local dev setup — remote PostgreSQL/MinIO, local Redis/RabbitMQ
Some checks are pending
Build & Deploy to K8s / build-and-deploy (push) Waiting to run
Some checks are pending
Build & Deploy to K8s / build-and-deploy (push) Waiting to run
Configure all 24 services to connect to remote staging PostgreSQL (212.28.186.239:30992) and MinIO (minio.techbi.org) while running Redis and RabbitMQ locally on non-standard ports (16379, 25672) to avoid conflicts with other projects. - Add .env.remote with hybrid connection strings - Add docker-compose.dev.yml (lightweight Redis + RabbitMQ only) - Add scripts/dev/start-dev.sh for one-command infra startup - Update all appsettings.Development.json with remote DB + timeout - Add .claude/launch.json for Claude Code preview (pos-web only) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
82
deployments/local/.env.remote
Normal file
82
deployments/local/.env.remote
Normal file
@@ -0,0 +1,82 @@
|
||||
# =============================================================================
|
||||
# GoodGo Platform - Hybrid Dev Environment (Remote DB + MinIO, Local Redis + RabbitMQ)
|
||||
# =============================================================================
|
||||
# EN: Points PostgreSQL and MinIO to remote staging servers.
|
||||
# Redis and RabbitMQ run locally on non-standard ports to avoid conflicts.
|
||||
# VI: Trỏ PostgreSQL và MinIO lên remote staging servers.
|
||||
# Redis và RabbitMQ chạy local trên port khác để tránh xung đột.
|
||||
# =============================================================================
|
||||
|
||||
ASPNETCORE_ENVIRONMENT=Development
|
||||
NODE_ENV=development
|
||||
LOG_LEVEL=Information
|
||||
API_VERSION=v1
|
||||
|
||||
# JWT / Auth
|
||||
JWT_SECRET=GoodGo-Local-Dev-JWT-Secret-2024-Min32Chars!!
|
||||
JWT_REFRESH_SECRET=GoodGo-Local-Dev-Refresh-Secret-2024-32Ch!!
|
||||
JWT_ID_SECRET=GoodGo-Local-Dev-ID-Secret-2024-Min32Char!!
|
||||
JWT_EXPIRES_IN=15m
|
||||
JWT_REFRESH_EXPIRES_IN=7d
|
||||
JWT_ID_EXPIRES_IN=1h
|
||||
JWT_ISSUER=goodgo-platform
|
||||
JWT_AUDIENCE=goodgo-services
|
||||
JWT_ACCESS_TOKEN_EXPIRY_MINUTES=15
|
||||
JWT_REFRESH_TOKEN_EXPIRY_DAYS=7
|
||||
|
||||
# Security
|
||||
ENCRYPTION_KEY=a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2
|
||||
|
||||
# Redis (LOCAL container on non-standard port to avoid conflict with ga-redis)
|
||||
REDIS_HOST=localhost
|
||||
REDIS_PORT=16379
|
||||
REDIS_PASSWORD=goodgo-redis-dev
|
||||
REDIS_DATABASE=0
|
||||
REDIS_CONNECTION_STRING=localhost:16379,password=goodgo-redis-dev
|
||||
|
||||
# MinIO (REMOTE - staging server via HTTPS)
|
||||
MINIO_ENDPOINT=minio.techbi.org
|
||||
MINIO_ACCESS_KEY=admin
|
||||
MINIO_SECRET_KEY=Velik@2026
|
||||
MINIO_USE_SSL=true
|
||||
MINIO_BUCKET=goodgo-staging
|
||||
|
||||
# RabbitMQ (LOCAL container on non-standard port to avoid conflict with ga-rabbitmq)
|
||||
RABBITMQ_HOST=localhost
|
||||
RABBITMQ_PORT=25672
|
||||
RABBITMQ_MANAGEMENT_PORT=35672
|
||||
RABBITMQ_USERNAME=guest
|
||||
RABBITMQ_PASSWORD=goodgo-rabbitmq-dev
|
||||
|
||||
# Feature flags
|
||||
FEATURE_SWAGGER_ENABLED=true
|
||||
FEATURE_DETAILED_ERRORS=true
|
||||
CORS_ORIGIN=http://localhost:3000,http://localhost:3001,http://localhost,http://admin.localhost
|
||||
TRACING_ENABLED=false
|
||||
METRICS_ENABLED=false
|
||||
|
||||
# Database connection strings (REMOTE PostgreSQL - Staging Neon via NodePort)
|
||||
IAM_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=iam_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
STORAGE_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=storage_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MEMBERSHIP_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=membership_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MERCHANT_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=merchant_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
WALLET_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=wallet_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
CHAT_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=chat_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
SOCIAL_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=social_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MINING_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mining_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MISSION_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mission_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
PROMOTION_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=promotion_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
CATALOG_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=catalog_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ORDER_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=order_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
INVENTORY_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=inventory_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
FNB_ENGINE_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=fnb_engine;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
BOOKING_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=booking_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ADS_MANAGER_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=ads_manager_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ADS_ANALYTICS_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=ads_analytics_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ADS_SERVING_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=ads_serving_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ADS_BILLING_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=ads_billing_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
ADS_TRACKING_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=ads_tracking_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MKT_FACEBOOK_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mkt_facebook_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MKT_WHATSAPP_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mkt_whatsapp_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MKT_X_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mkt_x_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
MKT_ZALO_DATABASE_URL=Host=212.28.186.239;Port=30992;Database=mkt_zalo_service;Username=cloud_admin;Password=XbnKQ2ONe6pMxxCh;SSL Mode=Prefer
|
||||
Reference in New Issue
Block a user