.devcontainer/docker-compose.yml

Summary

Maintainability
Test Coverage
version: '3.8'

services:
  app:
    build:
      context: ..
      dockerfile: .devcontainer/Dockerfile
      args:
        # Update 'VARIANT' to pick a version of Python: 3, 3.10, 3.9, 3.8, 3.7, 3.6
        # Append -bullseye or -buster to pin to an OS version.
        # Use -bullseye variants on local arm64/Apple Silicon.
        VARIANT: "3.8"
        # Optional Node.js version to install
        NODE_VERSION: "16"
    environment:
      DB_DRIVER: "postgresql"
      DB_USER: "admin"
      DB_PASSWORD: "postgres"

    volumes:
      - ..:/workspaces/rasa:cached

    # Overrides default command so things don't shut down after the process ends.
    command: sleep infinity

    # Runs app on the same network as the database container, allows "forwardPorts" in devcontainer.json function.
    network_mode: service:db
    # Uncomment the next line to use a non-root user for all processes.
    # user: vscode

  db:
    image: "bitnami/postgresql:11.15.0"
    restart: unless-stopped
    volumes:
      - postgres-data:/bitnami/postgresql
    environment:
      POSTGRESQL_USERNAME: admin
      POSTGRESQL_DATABASE: rasa
      POSTGRESQL_PASSWORD: postgres

  duckling:
    restart: unless-stopped
    image: "rasa/duckling:0.2.0.2"
    expose:
      - "8000"
    command: ["duckling-example-exe", "--no-access-log", "--no-error-log"]

  redis:
    restart: unless-stopped
    image: "bitnami/redis:6.2.7"
    environment:
      REDIS_PASSWORD: "redis"
    expose:
      - "6379"

volumes:
  postgres-data: null