networks: laravel: services: nginx: build: context: ./nginx dockerfile: dockerfiles/nginx.dockerfile args: - UID=${UID:-1000} - GID=${GID:-1000} ports: - "80:80" volumes: - ./php/src:/var/www/html:delegated depends_on: - php - redis - mysql - mailhog networks: - laravel php: build: context: ./php dockerfile: dockerfiles/php.dockerfile args: - UID=${UID:-1000} - GID=${GID:-1000} ports: - "9000:9000" volumes: - ./php/src:/var/www/html:delegated networks: - laravel python: build: context: ./python dockerfile: dockerfiles/python.dockerfile args: - UID=${UID:-1000} - GID=${GID:-1000} command: python3 app.py ports: - "5000:5000" volumes: - ./python:/python:Z - ./php/src:/var/www/html:delegated depends_on: - redis networks: - laravel redis: image: redis:alpine restart: unless-stopped ports: - "6379:6379" networks: - laravel composer: build: context: ./php dockerfile: dockerfiles/php.dockerfile args: - UID=${UID:-1000} - GID=${GID:-1000} volumes: - ./php/src:/var/www/html depends_on: - php entrypoint: [ 'composer', '--ignore-platform-reqs' ] networks: - laravel npm: image: node:current-alpine volumes: - ./php/src:/var/www/html ports: - "3000:3000" - "3001:3001" - "5173:5173" working_dir: /var/www/html entrypoint: [ 'npm' ] networks: - laravel mysql: image: mariadb:10.6 restart: unless-stopped tty: true ports: - "3306:3306" environment: MYSQL_DATABASE: homestead MYSQL_USER: homestead MYSQL_PASSWORD: secret MYSQL_ROOT_PASSWORD: secret SERVICE_TAGS: dev SERVICE_NAME: mysql networks: - laravel artisan: build: context: ./php dockerfile: dockerfiles/php.dockerfile args: - UID=${UID:-1000} - GID=${GID:-1000} volumes: - ./php/src:/var/www/html:delegated depends_on: - mysql entrypoint: [ 'php', '/var/www/html/artisan' ] networks: - laravel mailhog: image: mailhog/mailhog:latest ports: - "1025:1025" - "8025:8025" networks: - laravel chrome: image: selenium/node-chrome:nightly shm_size: 4gb networks: - laravel depends_on: - selenium-hub environment: - SE_EVENT_BUS_HOST=selenium-hub - SE_EVENT_BUS_PUBLISH_PORT=4442 - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 - SE_NODE_MAX_SESSIONS=2 - SE_NODE_MAX_SESSION=2 # edge: # image: selenium/node-edge:nightly # shm_size: 8gb # networks: # - laravel # depends_on: # - selenium-hub # environment: # - SE_EVENT_BUS_HOST=selenium-hub # - SE_EVENT_BUS_PUBLISH_PORT=4442 # - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 # - SE_NODE_MAX_SESSIONS=5 # - SE_NODE_MAX_SESSION=5 # # firefox: # image: selenium/node-firefox:nightly # shm_size: 8gb # networks: # - laravel # depends_on: # - selenium-hub # environment: # - SE_EVENT_BUS_HOST=selenium-hub # - SE_EVENT_BUS_PUBLISH_PORT=4442 # - SE_EVENT_BUS_SUBSCRIBE_PORT=4443 # - SE_NODE_MAX_SESSIONS=5 # - SE_NODE_MAX_SESSION=5 selenium-hub: image: selenium/hub:latest networks: - laravel environment: JAVA_OPTS: "-Xmx4g -Xms2g" container_name: selenium-hub ports: - "4442:4442" - "4443:4443" - "4444:4444"