81 lines
1.5 KiB
YAML
81 lines
1.5 KiB
YAML
volumes:
|
|
database:
|
|
|
|
services:
|
|
database:
|
|
image: postgres:latest
|
|
volumes:
|
|
- database:/var/lib/postgresql/data:z
|
|
restart: unless-stopped
|
|
env_file:
|
|
- .env
|
|
healthcheck:
|
|
test:
|
|
[
|
|
'CMD-SHELL',
|
|
'pg_isready -U ${POSTGRES_USER:-kycnot} -d ${POSTGRES_DATABASE:-kycnot}',
|
|
]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
pyworker:
|
|
build:
|
|
context: ./pyworker
|
|
image: kycnotme/pyworker:${PYWORKER_IMAGE_TAG:-latest}
|
|
restart: always
|
|
env_file:
|
|
- .env
|
|
|
|
crawl4ai:
|
|
image: unclecode/crawl4ai:basic-amd64
|
|
expose:
|
|
- '11235'
|
|
env_file:
|
|
- .env
|
|
volumes:
|
|
- /dev/shm:/dev/shm
|
|
deploy:
|
|
resources:
|
|
limits:
|
|
memory: 4G
|
|
reservations:
|
|
memory: 1G
|
|
|
|
redis:
|
|
image: redis:latest
|
|
restart: unless-stopped
|
|
healthcheck:
|
|
test: ['CMD', 'redis-cli', 'ping']
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
|
|
astro:
|
|
build:
|
|
dockerfile: web/Dockerfile
|
|
image: kycnotme/astro:${ASTRO_IMAGE_TAG:-latest}
|
|
restart: unless-stopped
|
|
env_file:
|
|
- .env
|
|
depends_on:
|
|
database:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
expose:
|
|
- 4321
|
|
healthcheck:
|
|
test:
|
|
[
|
|
'CMD',
|
|
'curl',
|
|
'-k',
|
|
'--silent',
|
|
'--fail',
|
|
'http://localhost:4321/internal-api/healthcheck',
|
|
]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|