services: ollama: volumes: - ./files/ollama:/root/.ollama container_name: ollama #UNCOMMENT THESE LINES IF YOU HAVE AN NVIDIA GPU #deploy: # resources: # reservations: # devices: # - driver: nvidia # count: all # capabilities: [gpu] pull_policy: always tty: true restart: unless-stopped image: ollama/ollama:latest ports: - '11434:11434' open-webui: image: 'ghcr.io/open-webui/open-webui:main' restart: always container_name: open-webui volumes: - './files/open-webui:/app/backend/data' depends_on: - ollama environment: - OLLAMA_BASE_URL=http://ollama:11434 - WEBUI_NAME=BioGPT - ENABLE_CODE_INTERPRETER=True - CODE_INTERPRETER_ENGINE=jupyter - CODE_INTERPRETER_JUPYTER_URL=http://jupyer:8888 - CODE_INTERPRETER_JUPYTER_AUTH=token - CODE_INTERPRETER_JUPYTER_AUTH_TOKEN=${JUPYTER_TOKEN} ports: - '8080:8080' # open-webui-pipelines: # image: 'ghcr.io/open-webui/pipelines:main' # restart: always # container_name: pipelines # volumes: # - './files/pipelines:/app/pipelines' # extra_hosts: # - 'host.docker.internal:host-gateway' # ports: # - '9099:9099' mcposerver: command: ["--config", "/app/conf/config.json"] #env_file: env/mcposerver.env image: ghcr.io/open-webui/mcpo:latest restart: unless-stopped volumes: - ./config/mcpo:/app/conf:ro extra_hosts: - 'host.docker.internal:host-gateway' ports: - '8000:8000' depends_on: - n8n postgres: image: postgres:16 restart: always environment: - POSTGRES_USER - POSTGRES_PASSWORD - POSTGRES_DB - POSTGRES_NON_ROOT_USER - POSTGRES_NON_ROOT_PASSWORD volumes: - ./files/postgres_storage:/var/lib/postgresql/data - ./files/init-data.sh:/docker-entrypoint-initdb.d/init-data.sh ports: - 5434:5432 healthcheck: test: ['CMD-SHELL', 'pg_isready -h localhost -U ${POSTGRES_USER} -d ${POSTGRES_DB}'] interval: 5s timeout: 5s retries: 10 n8n: image: docker.n8n.io/n8nio/n8n restart: always environment: - DB_TYPE=postgresdb - DB_POSTGRESDB_HOST=postgres - DB_POSTGRESDB_PORT=5432 - DB_POSTGRESDB_DATABASE=${POSTGRES_DB} - DB_POSTGRESDB_USER=${POSTGRES_USER} - DB_POSTGRESDB_PASSWORD=${POSTGRES_PASSWORD} - WEBHOOK_URL=http://n8n - GENERIC_TIMEZONE=${TIMEZONE} ports: - 5678:5678 links: - postgres volumes: - ./files/n8n_storage:/home/node/.n8n - ./files/n8n_data:/data depends_on: postgres: condition: service_healthy jupyter: image: jupyter/datascience-notebook:latest ports: - "8910:8888" volumes: - ./files/notebooks:/home/jovyan/work environment: - JUPYTER_TOKEN=${JUPYTER_TOKEN}