version: '3' services: database: image: postgres:${POSTGRES_VERSION:-13}-alpine ports: [ "5432" ] environment: POSTGRES_DB: ${POSTGRES_DB:-taxes} POSTGRES_PASSWORD: ${POSTGRES_PASSWORD:-xEPOzHeAj5rHZo0Y} POSTGRES_USER: ${POSTGRES_USER:-taxes_user} volumes: - ./storage/database:/var/lib/postgresql/data:rw networks: - internal www: restart: on-failure build: context: . dockerfile: services/www/Dockerfile networks: - frontend - internal volumes: - ./project:/var/www/html # depends_on: # - database labels: traefik.enable: 'true' traefik.http.routers.taxes.entrypoints: web traefik.http.routers.taxes.rule: Host(`taxes.docker`) traefik.http.services.taxes.loadbalancer.server.port: 80 traefik.http.routers.taxes.service: taxes # wait_for_it: # build: # context: . # dockerfile: services/wait_for_it/Dockerfile # networks: # - internal # depends_on: # - database # command: sh -c "/wait -t 30 database:5432 -- echo 123;" networks: internal: internal: true frontend: external: true