docker ready sin pruebas

This commit is contained in:
Your Name
2025-02-06 17:19:30 +01:00
parent 03d334fade
commit 85228eeda9
8 changed files with 159 additions and 95 deletions

View File

@ -1,65 +1,63 @@
version: "3.9"
version: '3.8'
services:
app:
build: .
container_name: mi_scraper
container_name: fastapi_app
ports:
- "8000:8000"
environment:
- MYSQL_HOST=${MYSQL_HOST}
- MYSQL_USER=${MYSQL_USER}
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_PORT=${MYSQL_PORT}
depends_on:
- mysql
environment:
- MYSQL_HOST=mysql
- MYSQL_USER=root
- MYSQL_PASSWORD=admin123
- MYSQL_DATABASE=scraper_db
volumes:
- ./app:/app
restart: always
networks:
- metanet1
- db
command: ["uvicorn", "app.main:app", "--host", "0.0.0.0", "--port", "8000"]
mysql:
image: mysql:8
container_name: mi_mysql
db:
image: mysql:latest
container_name: mysql_db
restart: always
environment:
MYSQL_ROOT_PASSWORD: admin123
MYSQL_DATABASE: scraper_db
MYSQL_ROOT_PASSWORD: ${MYSQL_PASSWORD}
MYSQL_DATABASE: ${MYSQL_DATABASE}
MYSQL_USER: ${MYSQL_USER}
MYSQL_PASSWORD: ${MYSQL_PASSWORD}
ports:
- "3306:3306"
volumes:
- mysql_data:/var/lib/mysql
- ./init.sql:/docker-entrypoint-initdb.d/init.sql
networks:
- metanet1
scrapper:
build: .
container_name: scrapper
depends_on:
- app
environment:
- OLLAMA_URL=${OLLAMA_URL}
- OLLAMA_MODEL=${OLLAMA_MODEL}
command: ["sh", "-c", "crond -f"]
volumes:
- ./scrapper:/app/scrapper
- ./crontab.txt:/etc/crontabs/root
metabase:
image: metabase/metabase:latest
container_name: metabase
hostname: metabase
volumes:
- /dev/urandom:/dev/random:ro
ports:
- "3000:3000"
- "3100:3000"
environment:
MB_DB_TYPE: mysql
MB_DB_DBNAME: scraper_db
MB_DB_PORT: 3306
MB_DB_USER: root
MB_DB_PASS: admin123
MB_DB_HOST: mysql
networks:
- metanet1
MB_DB_DBNAME: ${MYSQL_DATABASE}
MB_DB_HOST: ${MYSQL_HOST}
MB_DB_PORT: ${MYSQL_PORT}
MB_DB_USER: ${MYSQL_USER}
MB_DB_PASS: ${MYSQL_PASSWORD}
depends_on:
- mysql
healthcheck:
test: curl --fail -I http://localhost:3000/api/health || exit 1
interval: 15s
timeout: 5s
retries: 5
networks:
metanet1:
driver: bridge
- db
volumes:
mysql_data:
mysql_data: