version: '3.7'
services:
  root_db:
    image: postgres
    restart: always
    volumes:
      - postgresdatanoco:/var/lib/postgresql/data
    environment:
      POSTGRES_PASSWORD: password
      POSTGRES_USER: postgres
      POSTGRES_DB: root_db
    healthcheck:
      test: pg_isready -U "$$POSTGRES_USER" -d "$$POSTGRES_DB"
      interval: 10s
      timeout: 2s
      retries: 10
  nocodb:
    depends_on:
      - root_db
    image: nocodb/nocodb:latest
    ports:
      - "8080:8080"
    restart: always
    environment:
      NC_DB: "pg://root_db:5432?u=postgres&p=password&d=root_db"

volumes:
  postgresdatanoco:
    driver: local
    driver_opts:
      type: none
      device: ${VOLUME_POSTGRES_NOCODB}
      o: bind
