Files
Octop/docker/docker-compose.yml
e9deb58206 fix: harden Docker bootstrap, Bridge sessions, and desktop/provider UX (#1825)
Avoid silent random admin passwords, keep Bridge links alive under load,
and stop custom providers from sending stream_options that MindIE rejects.

Co-authored-by: jubaoliang <jubaoliang@tencent.com>
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-10-09 07:04:56 +08:00

57 lines
2.5 KiB
YAML

# =============================================================================
# Octop — Docker Compose
#
# 用法(在仓库根目录执行):
# docker compose -f docker/docker-compose.yml up -d
# OCTOP_PORT=9090 docker compose -f docker/docker-compose.yml up -d
# OCTOP_DEFAULT_PASSWORD=<your-strong-password> docker compose -f docker/docker-compose.yml up -d
#
# 可在 docker/ 目录放置 .env 文件,例如:
# OCTOP_PORT=9090
# OCTOP_DEFAULT_PASSWORD=<your-strong-password>
# OCTOP_ADMIN_USERNAME=admin
# OCTOP_DATABASE_DRIVER=postgresql
# OCTOP_DATABASE_URL=postgresql://octop:octop@host.docker.internal:5432/octop
#
# 注意: docker/.env 仅用于 Compose 插值;变量必须列在下方 environment
# 才会进入容器。也可写入数据卷内的 ~/.octop/env(宿主机挂载目录下的 env)。
# 密码须 ≥8 位且同时包含字母与数字(与控制台改密策略一致)。
# 未设置或未通过策略时不自动建管理员,打开页面走设置向导
# (向导口令写入 /data/.octop/octop-login.txt)。
# =============================================================================
services:
octop:
build:
context: ..
dockerfile: docker/Dockerfile
image: octop:latest
container_name: octop
restart: unless-stopped
ports:
- "${OCTOP_PORT:-8088}:${OCTOP_PORT:-8088}"
volumes:
- ${OCTOP_DATA:-~/.octop}:/data/.octop
environment:
- HOME=/data
- OCTOP_BIND_HOST=0.0.0.0
- OCTOP_PORT=${OCTOP_PORT:-8088}
- OCTOP_LOG_LEVEL=${OCTOP_LOG_LEVEL:-info}
- OCTOP_DEFAULT_PASSWORD=${OCTOP_DEFAULT_PASSWORD:-}
- OCTOP_ADMIN_USERNAME=${OCTOP_ADMIN_USERNAME:-admin}
- OCTOP_ADMIN_DISPLAY_NAME=${OCTOP_ADMIN_DISPLAY_NAME:-Admin}
- OCTOP_DATABASE_URL=${OCTOP_DATABASE_URL:-}
- OCTOP_DATABASE_DRIVER=${OCTOP_DATABASE_DRIVER:-}
- OCTOP_DATABASE_SQLITE_PATH=${OCTOP_DATABASE_SQLITE_PATH:-}
- OCTOP_DATABASE_HOST=${OCTOP_DATABASE_HOST:-}
- OCTOP_DATABASE_PORT=${OCTOP_DATABASE_PORT:-}
- OCTOP_DATABASE_NAME=${OCTOP_DATABASE_NAME:-}
- OCTOP_DATABASE_USER=${OCTOP_DATABASE_USER:-}
- OCTOP_DATABASE_PASSWORD=${OCTOP_DATABASE_PASSWORD:-}
- OPENAI_API_KEY=${OPENAI_API_KEY:-}
- DASHSCOPE_API_KEY=${DASHSCOPE_API_KEY:-}
- LANGFUSE_TRACING_ENABLED=${LANGFUSE_TRACING_ENABLED:-true}
- LANGFUSE_PUBLIC_KEY=${LANGFUSE_PUBLIC_KEY:-}
- LANGFUSE_SECRET_KEY=${LANGFUSE_SECRET_KEY:-}
- LANGFUSE_BASE_URL=${LANGFUSE_BASE_URL:-}