79 lines
2.0 KiB
YAML
79 lines
2.0 KiB
YAML
# Comments are provided throughout this file to help you get started.
|
|
# If you need more help, visit the Docker Compose reference guide at
|
|
# https://docs.docker.com/go/compose-spec-reference/
|
|
|
|
# Here the instructions define your application as a service called "app".
|
|
# This service is built from the Dockerfile in the current directory.
|
|
# You can add other services your application may depend on here, such as a
|
|
# database or a cache. For examples, see the Awesome Compose repository:
|
|
# https://github.com/docker/awesome-compose
|
|
services:
|
|
app:
|
|
build:
|
|
context: .
|
|
target: final
|
|
restart: unless-stopped
|
|
ports:
|
|
- 80:80
|
|
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:
|
|
build:
|
|
context: ./undetectedChromedriver
|
|
dockerfile: seleniumChromedriverDockerfile
|
|
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://localhost:4444/wd/hub/status | jq -e '.value.ready == true' || exit 1"
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
tty: true
|
|
ports:
|
|
- "4442-4444:4442-4444"
|
|
networks:
|
|
- default
|
|
- selenium-grid
|
|
|
|
networks:
|
|
selenium-grid:
|
|
driver: bridge
|
|
|
|
volumes:
|
|
dbdata:
|
|
chromeProfile:
|