imkFinal/_docker-compose.yml

109 lines
2.9 KiB
YAML

version: "3.8"
services:
postgres:
image: postgres:15-alpine
container_name: imk-postgres
environment:
POSTGRES_USER: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_DB: imk_db
volumes:
- postgres_data:/var/lib/postgresql/data
ports:
- "5432:5432"
networks:
- imk_copy_imk_network
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 10s
timeout: 5s
retries: 5
backend:
build:
context: ./backend
dockerfile: Dockerfile
container_name: imk-backend
# environment:
# - NODE_ENV=development
# - DATABASE_URL=postgresql://postgres:postgres@postgres:5432/imk_db
# - AWS_ACCESS_KEY_ID=4d2f5655369a02100375e3247d7e1fe6
# - AWS_ENDPOINT_URL=https://eu2.contabostorage.com
# - AWS_REGION=EU2
# - AWS_S3_BUCKET_NAME=imk-data
# - AWS_SECRET_ACCESS_KEY=6d4723e14c0d799b89948c24dbe983e4
# - DEFAULT_ADMIN_EMAIL=taratur@gmail.com
# - DEFAULT_ADMIN_NAME=admin
# - DEFAULT_ADMIN_PASSWORD=irina7654321
# - EMAIL_FROM=mailer@yandex.com
# - JWT_SECRET=some-secret
# - PORT=3000
# - SMTP_HOST=imk.mk
# - SMTP_PASS=76Avtostoperski76
# - SMTP_PORT=465
# - SMTP_USER=mailer@imk.mk
# ports:
# - "3000:3000"
# depends_on:
# postgres:
# condition: service_healthy
ports:
- "3000:3000"
environment:
- NODE_ENV=production
# - PORT=3000
- DATABASE_URL=postgresql://postgres:postgres@imk-postgres:5432/postgres?schema=public
- AWS_ACCESS_KEY_ID=4d2f5655369a02100375e3247d7e1fe6
- AWS_ENDPOINT_URL=https://eu2.contabostorage.com
- AWS_REGION=EU2
- AWS_S3_BUCKET_NAME=imk-data
- AWS_SECRET_ACCESS_KEY=6d4723e14c0d799b89948c24dbe983e4
- DEFAULT_ADMIN_EMAIL=taratur@gmail.com
- DEFAULT_ADMIN_NAME=admin
- DEFAULT_ADMIN_PASSWORD=irina7654321
- EMAIL_FROM=mailer@yandex.com
- JWT_SECRET=some-secret
- PORT=3000
- SMTP_HOST=imk.mk
- SMTP_PASS=76Avtostoperski76
- SMTP_PORT=465
- SMTP_USER=mailer@imk.mk
# env_file:
# - .env
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_started
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000/health"]
interval: 30s
timeout: 10s
retries: 3
start_period: 15s
networks:
- imk_copy_imk_network
volumes:
- ./backend:/usr/src/app
- /usr/src/app/node_modules
command: sh -c "npm run prisma:generate && npm run prisma:migrate:deploy && npm run start:dev"
redis:
image: redis:alpine
container_name: imk-redis
ports:
- "6379:6379"
networks:
- imk_copy_imk_network
volumes:
- redis_data:/data
networks:
imk_copy_imk_network:
driver: bridge
volumes:
postgres_data:
redis_data: