version: "3.8" services: db: image: mariadb environment: MYSQL_ROOT_PASSWORD: ${MYSQL_ROOT_PASSWORD} MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} networks: - mynetwork healthcheck: test: ["CMD-SHELL", "mariadb-admin ping -h localhost -u root --password=${MYSQL_ROOT_PASSWORD}"] interval: 5s timeout: 5s retries: 5 start_period: 5s filler: build: ./filler environment: MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} depends_on: db: condition: service_healthy volumes: - ./data.csv:/app/data.csv - shared_data:/shared networks: - mynetwork restart: "no" web: build: ./web environment: MYSQL_DATABASE: ${MYSQL_DATABASE} MYSQL_USER: ${MYSQL_USER} MYSQL_PASSWORD: ${MYSQL_PASSWORD} ports: - "8000:8000" depends_on: db: condition: service_healthy filler: condition: service_started networks: - mynetwork volumes: - shared_data:/shared networks: mynetwork: driver: bridge volumes: shared_data: