119 lines
2.7 KiB
YAML
119 lines
2.7 KiB
YAML
services:
|
|
backend_db:
|
|
image: postgres:17-alpine3.21
|
|
container_name: backend_db
|
|
tty: true
|
|
ports:
|
|
- "8050:5432"
|
|
environment:
|
|
POSTGRES_DB: ${POSTGRES_DB}
|
|
POSTGRES_USER: ${POSTGRES_USER}
|
|
POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
|
|
volumes:
|
|
- ./data:/var/lib/postgresql/data
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
|
|
|
|
notification_db:
|
|
image: postgres:17-alpine3.21
|
|
container_name: notification_db
|
|
tty: true
|
|
ports:
|
|
- "8070:5432"
|
|
environment:
|
|
POSTGRES_DB: ${NOTIFICATION_SERVER_DB}
|
|
POSTGRES_USER: ${NOTIFICATION_SERVER_USER}
|
|
POSTGRES_PASSWORD: ${NOTIFICATION_SERVER_PASSWORD}
|
|
volumes:
|
|
- ./notification:/var/lib/postgresql/data
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
|
|
redis:
|
|
image: redis:7-alpine3.21
|
|
container_name: redis
|
|
restart: unless-stopped
|
|
tty: true
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
|
|
laravel:
|
|
build:
|
|
context: ${LARAVEL_PROJECT_PATH}
|
|
dockerfile: Dockerfile
|
|
container_name: ${PROJECT_NAME}
|
|
tty: true
|
|
ports:
|
|
- "9000:9000"
|
|
volumes:
|
|
- ${LARAVEL_PROJECT_PATH}:/var/www/laravel
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
depends_on:
|
|
- backend_db
|
|
|
|
|
|
notification_server:
|
|
build:
|
|
context: ${NOTIFICATION_SERVER_PATH}
|
|
dockerfile: Dockerfile
|
|
container_name: notification_server
|
|
environment:
|
|
- NODE_ENV=production
|
|
- DB_HOST=notification_db
|
|
- DB_PORT=5432
|
|
- DB_USERNAME=${NOTIFICATION_SERVER_USER}
|
|
- DB_PASSWORD=${NOTIFICATION_SERVER_PASSWORD}
|
|
- DB_DATABASE=${NOTIFICATION_SERVER_DB}
|
|
- DB_SSL=${NOTIFICATION_SERVER_DB_SSL}
|
|
- DB_SYNC=${NOTIFICATION_SERVER_DB_SYNC}
|
|
- PORT=${NOTIFICATION_SERVER_PORT}
|
|
- REDIS_HOST=${REDIS_HOST}
|
|
- REDIS_PORT=${REDIS_PORT}
|
|
ports:
|
|
- "3023:${NOTIFICATION_SERVER_PORT}"
|
|
volumes:
|
|
- ${NOTIFICATION_SERVER_PATH}:/var/www/notification_server
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
depends_on:
|
|
- backend_db
|
|
- laravel
|
|
- notification_db
|
|
- redis
|
|
|
|
nextjs:
|
|
build:
|
|
context: ${NEXT_JS_PATH}
|
|
dockerfile: Dockerfile
|
|
container_name: nextjs
|
|
environment:
|
|
- NEXT_PUBLIC_VERSION=${NEXT_PUBLIC_VERSION}
|
|
- NEXT_PUBLIC_API_URL=${NEXT_PUBLIC_API_URL}
|
|
- NEXT_PUBLIC_SERVER_SOCKET_URL=${NEXT_PUBLIC_SERVER_SOCKET_URL}
|
|
volumes:
|
|
- ${NEXT_JS_PATH}:/var/www/nextjs
|
|
ports:
|
|
- "3000:3000"
|
|
env_file:
|
|
- .env.local
|
|
restart: unless-stopped
|
|
profiles:
|
|
- server
|
|
networks:
|
|
- crm_network
|
|
|
|
networks:
|
|
crm_network:
|
|
driver: bridge |