81 lines
1.9 KiB
YAML
81 lines
1.9 KiB
YAML
services:
|
|
app:
|
|
image: git.matthiasg.dev/ninluc/datbrowser:latest
|
|
restart: unless-stopped
|
|
ports:
|
|
- 80:80
|
|
volumes:
|
|
- browserDownloads:/app/Browser/downloads
|
|
- browserScreenshots:/app/Browser/screenshots
|
|
- browserSource:/app/Browser/source
|
|
depends_on:
|
|
# db:
|
|
# condition: service_healthy
|
|
selenium-hub:
|
|
condition: service_healthy
|
|
|
|
db:
|
|
image: mariadb:latest
|
|
restart: unless-stopped
|
|
# healthcheck:
|
|
# test: ["CMD", 'mysqladmin', 'ping', '-h', 'db', '-u', '${DB_USERNAME}', '-p${DB_PASSWORD}' ]
|
|
# interval: 2s
|
|
# timeout: 20s
|
|
# retries: 10
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
|
|
MYSQL_DATABASE: ${DB_DATABASE}
|
|
MYSQL_USER: ${DB_USERNAME}
|
|
MYSQL_PASSWORD: ${DB_PASSWORD}
|
|
volumes:
|
|
- dbdata:/var/lib/mysql
|
|
|
|
undetected-chromedriver-node:
|
|
image: git.matthiasg.dev/ninluc/selenium/node-uc:latest
|
|
restart: unless-stopped
|
|
volumes:
|
|
- /tmp:/tmp
|
|
- chromeProfile:/home/seluser/profile/
|
|
shm_size: 2gb
|
|
tty: true
|
|
environment:
|
|
- SE_EVENT_BUS_HOST=selenium-hub
|
|
- SE_EVENT_BUS_PUBLISH_PORT=4442
|
|
- SE_EVENT_BUS_SUBSCRIBE_PORT=4443
|
|
ports:
|
|
- "7900:7900"
|
|
networks:
|
|
- selenium-grid
|
|
|
|
selenium-hub:
|
|
image: selenium/hub:latest
|
|
healthcheck:
|
|
test: "curl -s http://127.0.0.1:4444/wd/hub/status | jq -e '.value.ready == true' || exit 1"
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
restart: unless-stopped
|
|
tty: true
|
|
ports:
|
|
- "4442-4444:4442-4444"
|
|
networks:
|
|
- default
|
|
- selenium-grid
|
|
|
|
watchtower:
|
|
image: containrrr/watchtower
|
|
restart: unless-stopped
|
|
volumes:
|
|
- /var/run/docker.sock:/var/run/docker.sock
|
|
|
|
networks:
|
|
selenium-grid:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
dbdata:
|
|
chromeProfile:
|
|
browserDownloads:
|
|
browserScreenshots:
|
|
browserSource:
|