Spaces:
Runtime error
Runtime error
services: | |
# Base application | |
app: | |
build: . | |
image: synthetic-data-generator:app | |
ports: | |
- "7860:7860" | |
env_file: | |
- .env | |
environment: | |
- HF_TOKEN=${HF_TOKEN} | |
networks: | |
- app-network | |
depends_on: | |
argilla: | |
condition: service_started | |
required: false | |
ollama: | |
condition: service_healthy | |
required: false | |
# Ollama service | |
ollama: | |
# CPU/NVIDIA usa latest, AMD usa rocm | |
image: ollama/ollama:${OLLAMA_HARDWARE:-latest} | |
profiles: | |
- with-ollama | |
ports: | |
- "11434:11434" | |
command: serve #&& pull ${OLLAMA_MODEL} && run ${OLLAMA_MODEL} | |
env_file: | |
- .env | |
environment: | |
- OLLAMA_BASE_URL=${OLLAMA_BASE_URL:-} | |
volumes: | |
- ollama_data:/root/.ollama | |
# only AMD if OLLAMA_HARDWARE=rocm | |
- /dev/kfd:/dev/kfd:${OLLAMA_HARDWARE:-none}=rocm | |
- /dev/dri:/dev/dri:${OLLAMA_HARDWARE:-none}=rocm | |
networks: | |
- app-network | |
deploy: | |
resources: | |
reservations: | |
devices: | |
- driver: nvidia | |
count: all | |
capabilities: [gpu] | |
healthcheck: | |
test: ["CMD", "curl", "-f", "http://localhost:11434/api/health"] | |
interval: 30s | |
timeout: 10s | |
retries: 3 | |
# Elasticsearch service for Argilla | |
elasticsearch: | |
image: docker.elastic.co/elasticsearch/elasticsearch:8.17.0 | |
profiles: | |
- with-argilla | |
environment: | |
- ES_JAVA_OPTS=-Xms512m -Xmx512m | |
- node.name=elasticsearch | |
- cluster.name=es-argilla-local | |
- discovery.type=single-node | |
- cluster.routing.allocation.disk.threshold_enabled=false | |
- xpack.security.enabled=false | |
volumes: | |
- es_data:/usr/share/elasticsearch/data | |
networks: | |
- app-network | |
ports: | |
- "9200:9200" | |
- "9300:9300" | |
ulimits: | |
memlock: | |
soft: -1 | |
hard: -1 | |
nofile: | |
soft: 65536 | |
hard: 65536 | |
healthcheck: | |
test: ["CMD", "curl", "-f", "http://localhost:9200"] | |
interval: 30s | |
timeout: 10s | |
retries: 3 | |
# PostgreSQL service for Argilla | |
postgres: | |
image: postgres:14 | |
profiles: | |
- with-argilla | |
environment: | |
POSTGRES_USER: postgres | |
POSTGRES_PASSWORD: postgres | |
POSTGRES_DB: argilla | |
networks: | |
- app-network | |
volumes: | |
- postgres_data:/var/lib/postgresql/data | |
# Redis service for Argilla | |
redis: | |
image: redis | |
profiles: | |
- with-argilla | |
networks: | |
- app-network | |
# Argilla service | |
argilla: | |
image: argilla/argilla-server:latest | |
profiles: | |
- with-argilla | |
ports: | |
- "6900:6900" | |
healthcheck: | |
test: ["CMD", "curl", "-f", "http://localhost:6900/api/ready"] | |
interval: 30s | |
timeout: 10s | |
retries: 3 | |
env_file: | |
- .env | |
environment: | |
- ARGILLA_HOME_PATH=/var/lib/argilla | |
- ARGILLA_ELASTICSEARCH=http://elasticsearch:9200 | |
- ARGILLA_DATABASE_URL=postgresql+asyncpg://postgres:postgres@postgres:5432/argilla | |
- ARGILLA_REDIS_URL=redis://redis:6379/0 | |
- USERNAME=${ARGILLA_USERNAME} | |
- PASSWORD=${ARGILLA_PASSWORD} | |
- API_KEY=${ARGILLA_API_KEY} | |
- WORKSPACE=default | |
volumes: | |
- argilla_data:/argilla | |
networks: | |
- app-network | |
depends_on: | |
elasticsearch: | |
condition: service_healthy | |
postgres: | |
condition: service_started | |
redis: | |
condition: service_started | |
# Argilla Worker | |
worker: | |
image: argilla/argilla-server:latest | |
profiles: | |
- with-argilla | |
env_file: | |
- .env | |
environment: | |
- ARGILLA_HOME_PATH=/var/lib/argilla | |
- ARGILLA_ELASTICSEARCH=http://elasticsearch:9200 | |
- ARGILLA_DATABASE_URL=postgresql+asyncpg://postgres:postgres@postgres:5432/argilla | |
- ARGILLA_REDIS_URL=redis://redis:6379/0 | |
- BACKGROUND_NUM_WORKERS=2 | |
- USERNAME=${ARGILLA_USERNAME} | |
- PASSWORD=${ARGILLA_PASSWORD} | |
- API_KEY=${ARGILLA_API_KEY} | |
- WORKSPACE=default | |
networks: | |
- app-network | |
depends_on: | |
- postgres | |
- elasticsearch | |
- redis | |
command: sh -c 'python -m argilla_server worker --num-workers $${BACKGROUND_NUM_WORKERS}' | |
networks: | |
app-network: | |
driver: bridge | |
volumes: | |
es_data: | |
driver: local | |
argilla_data: | |
driver: local | |
ollama_data: | |
driver: local | |
postgres_data: | |
driver: local |