feat(deploy): add staging environment with dedicated docker compose
- Add docker-compose.staging.yml (app on 127.0.0.1:8081, separate MongoDB on 127.0.0.1:27019, dedicated volume/network) - deploy.sh: select compose file and port per environment (staging 8081, production 8080) - Dockerfile: accept NEXT_PUBLIC_SITE_URL as build arg (inlined at build time for NEXT_PUBLIC_ vars); pass it in both compose files - Add .env.staging.example and .env.production.example
This commit is contained in:
@@ -0,0 +1,54 @@
|
||||
services:
|
||||
# Next.js Application (Staging Mode)
|
||||
app:
|
||||
build:
|
||||
context: ./proto
|
||||
dockerfile: Dockerfile
|
||||
target: runner
|
||||
args:
|
||||
- NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL:-https://stage.mozdit.hu}
|
||||
container_name: mozdit-app-staging
|
||||
ports:
|
||||
- "127.0.0.1:8081:3000" # Belső port — csak nginx-en keresztül elérhető
|
||||
environment:
|
||||
- NODE_ENV=production
|
||||
- MONGODB_URI=${MONGODB_URI:-mongodb://mongodb:27017/mozdit}
|
||||
- MONGODB_DB=${MONGODB_DB:-mozdit}
|
||||
- NEXT_PUBLIC_SITE_URL=${NEXT_PUBLIC_SITE_URL:-https://stage.mozdit.hu}
|
||||
- NEXT_PUBLIC_COMPANY_NAME=${NEXT_PUBLIC_COMPANY_NAME:-mozdIT Bt.}
|
||||
- NEXT_PUBLIC_CONTACT_EMAIL=${NEXT_PUBLIC_CONTACT_EMAIL:-info@mozdit.hu}
|
||||
- LOKI_HOST=${LOKI_HOST:-http://loki:3100}
|
||||
depends_on:
|
||||
- mongodb
|
||||
networks:
|
||||
- mozdit-network-staging
|
||||
restart: always
|
||||
logging:
|
||||
driver: "json-file"
|
||||
options:
|
||||
max-size: "10m"
|
||||
max-file: "3"
|
||||
|
||||
# MongoDB Database (külön a prod-tól)
|
||||
mongodb:
|
||||
image: mongo:7.0
|
||||
container_name: mozdit-mongodb-staging
|
||||
ports:
|
||||
- "127.0.0.1:27019:27017" # Belső port, nem ütközik a prod 27018-cal
|
||||
environment:
|
||||
- MONGO_INITDB_ROOT_USERNAME=${MONGO_ROOT_USER:-admin}
|
||||
- MONGO_INITDB_ROOT_PASSWORD=${MONGO_ROOT_PASSWORD:-password123}
|
||||
- MONGO_INITDB_DATABASE=mozdit
|
||||
volumes:
|
||||
- mongodb_data_staging:/data/db
|
||||
networks:
|
||||
- mozdit-network-staging
|
||||
restart: always
|
||||
|
||||
volumes:
|
||||
mongodb_data_staging:
|
||||
driver: local
|
||||
|
||||
networks:
|
||||
mozdit-network-staging:
|
||||
driver: bridge
|
||||
Reference in New Issue
Block a user