version: '3' services: db: image: postgres:13-alpine volumes: - ./dataline-db/pg_data:/var/lib/postgresql/data - ./dataline-db/src/main/resources/schema.sql:/docker-entrypoint-initdb.d/init.sql environment: - POSTGRES_USER=${DATABASE_USER} - POSTGRES_PASSWORD=${DATABASE_PASSWORD} - POSTGRES_DB=db-${DATABASE_DB} scheduler: image: dataline/scheduler:dev build: context: . dockerfile: scheduler.Dockerfile container_name: dataline-scheduler environment: - ENV=${ENV} - DATABASE_USER=${DATABASE_USER} - DATABASE_PASSWORD=${DATABASE_PASSWORD} - DATABASE_URL=${DATABASE_URL} - WAIT_BEFORE_HOSTS=5 - WAIT_HOSTS=db:5432 - CONFIG_PERSISTENCE_ROOT=${CONFIG_PERSISTENCE_ROOT} depends_on: - db server: image: dataline/server:dev build: context: . dockerfile: server.Dockerfile container_name: dataline-server environment: - ENV=${ENV} - WAIT_BEFORE_HOSTS=5 - WAIT_HOSTS=db:5432 - CONFIG_PERSISTENCE_ROOT=${CONFIG_PERSISTENCE_ROOT} ports: - 8001:8001 depends_on: - scheduler webapp: image: dataline/webapp:dev build: context: . dockerfile: webapp.Dockerfile container_name: dataline-webapp ports: - 8000:80 depends_on: - server