Files
dyolink/infrastructure/docker-compose.yml
Admin 26bd35ae3c Initial commit: Full project structure
- Backend: NestJS with Docker
- Frontend: Next.js with Docker
- Nginx configuration for reverse proxy
- PostgreSQL setup
- Docker compose for orchestration
- Development environment configuration
2026-04-23 15:33:11 +03:30

92 lines
2.1 KiB
YAML

services:
postgres:
image: postgres:15-alpine
container_name: dyolink_db_container
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: 1234
POSTGRES_DB: dyolink_db
ports:
- "5433:5432"
volumes:
- postgres_data_dev:/var/lib/postgresql/data
- ./database/init.sql:/docker-entrypoint-initdb.d/init.sql:ro
- ./database/backups:/backups
networks:
- dyolink_network
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
backend:
build: ../backend
container_name: dyolink_backend_container
depends_on:
postgres:
condition: service_healthy
env_file:
- ../backend/.env
environment:
- DATABASE_URL=postgresql://postgres:1234@postgres:5432/dyolink_db
- FRONTEND_URL=http://frontend:3000
- PORT=3000
ports:
- "4001:3000"
volumes:
- ../backend:/app:rw
- /app/node_modules
networks:
- dyolink_network
command: npm run start:dev
restart: unless-stopped
frontend:
build: ../frontend
container_name: dyolink_frontend_container
depends_on:
- backend
env_file:
- ../frontend/.env.local
environment:
- NEXT_PUBLIC_API_URL=http://localhost:4001/api
- NEXT_PUBLIC_APP_URL=http://localhost:4000
- PORT=3000
ports:
- "4000:3000"
volumes:
- ../frontend:/app:rw
- /app/node_modules
- /app/.next
networks:
- dyolink_network
command: npm run dev
restart: unless-stopped
nginx:
build: ./nginx
container_name: dyolink_nginx_container
depends_on:
- backend
- frontend
ports:
- "8080:80"
- "8443:443"
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./ssl:/etc/nginx/ssl:ro
- ./logs/nginx:/var/log/nginx
networks:
- dyolink_network
restart: unless-stopped
networks:
dyolink_network:
driver: bridge
name: dyolink_network
volumes:
postgres_data_dev:
name: dyolink_postgres_data_dev