I am batman
This commit is contained in:
86
docker-compose.yml
Normal file
86
docker-compose.yml
Normal file
@@ -0,0 +1,86 @@
|
||||
version: '3.8'
|
||||
|
||||
services:
|
||||
# PostgreSQL Database
|
||||
postgres:
|
||||
image: postgres:15-alpine
|
||||
container_name: go-microservices-db
|
||||
environment:
|
||||
POSTGRES_DB: ${POSTGRES_DB:-microservices_db}
|
||||
POSTGRES_USER: ${POSTGRES_USER:-postgres}
|
||||
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-postgres}
|
||||
ports:
|
||||
- "${BLUEPRINT_DB_PORT:-5432}:5432"
|
||||
volumes:
|
||||
- postgres_data:/var/lib/postgresql/data
|
||||
networks:
|
||||
- microservices-network
|
||||
|
||||
# Auth Service
|
||||
auth-service:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./services/auth-service/Dockerfile
|
||||
container_name: auth-service
|
||||
ports:
|
||||
- "50051:50051"
|
||||
environment:
|
||||
- DATABASE_URL=postgres://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@postgres:${BLUEPRINT_DB_PORT:-5432}/${POSTGRES_DB:-microservices_db}?sslmode=disable
|
||||
- JWT_SECRET=${JWT_SECRET:-your-development-jwt-secret-change-in-production}
|
||||
depends_on:
|
||||
- postgres
|
||||
networks:
|
||||
- microservices-network
|
||||
restart: unless-stopped
|
||||
|
||||
# User Service
|
||||
user-service:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./services/user-service/Dockerfile
|
||||
container_name: user-service
|
||||
ports:
|
||||
- "50052:50052"
|
||||
environment:
|
||||
- DATABASE_URL=postgres://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@postgres:${BLUEPRINT_DB_PORT:-5432}/${POSTGRES_DB:-microservices_db}?sslmode=disable
|
||||
networks:
|
||||
- microservices-network
|
||||
restart: unless-stopped
|
||||
|
||||
# Post Service
|
||||
post-service:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./services/post-service/Dockerfile
|
||||
container_name: post-service
|
||||
ports:
|
||||
- "50053:50053"
|
||||
environment:
|
||||
- DATABASE_URL=postgres://${POSTGRES_USER:-postgres}:${POSTGRES_PASSWORD:-postgres}@postgres:${BLUEPRINT_DB_PORT:-5432}/${POSTGRES_DB:-microservices_db}?sslmode=disable
|
||||
networks:
|
||||
- microservices-network
|
||||
restart: unless-stopped
|
||||
|
||||
# API Gateway
|
||||
api-gateway:
|
||||
build:
|
||||
context: .
|
||||
dockerfile: ./api-gateway/Dockerfile
|
||||
container_name: api-gateway
|
||||
ports:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
- AUTH_SERVICE_GRPC=auth-service:50051
|
||||
- JWT_SECRET=${JWT_SECRET:-your-development-jwt-secret-change-in-production}
|
||||
depends_on:
|
||||
- auth-service
|
||||
networks:
|
||||
- microservices-network
|
||||
restart: unless-stopped
|
||||
|
||||
volumes:
|
||||
postgres_data:
|
||||
|
||||
networks:
|
||||
microservices-network:
|
||||
driver: bridge
|
||||
Reference in New Issue
Block a user