109 lines
2.9 KiB
YAML
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:
|