Files
ttstd-infinite-canvas/docker-compose.dev.yml
AetherNo2332 56241bca5b build(deploy): 部署配置 - 转发 CANVAS_PUBLIC_BASE_URL (#564)
Original-Commit: 1734438cd00963a607795b2a6640ab7827e487e0
build(deploy): 部署配置 - 转发 CANVAS_PUBLIC_BASE_URL

后端读 CANVAS_PUBLIC_BASE_URL(resource.go 用它拼本地存储的短时签名链接,取不到时的报错
也在提示管理员配置它),但 5 个 Compose 文件都没有把它传进容器:按报错操作的管理员把变量
写进 .env 之后没有任何效果,而报错文案仍在让他"去配置"。

5 个编排与 .env.example 一并补齐(默认空值,行为与现状一致),并说明内网部署还需把该主机
放进 CANVAS_ALLOWED_PRIVATE_UPSTREAM_HOSTS。无代码改动。
2026-09-21 09:37:19 +08:00

79 lines
2.6 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
name: open-ai-canvas-dev
services:
backend:
build:
context: .
dockerfile: backend/Dockerfile.dev
args:
GO_IMAGE: ${GO_IMAGE:-golang:1.25-alpine}
GOPROXY: ${GOPROXY:-https://goproxy.cn,direct}
ALPINE_MIRROR: ${ALPINE_MIRROR:-}
working_dir: /workspace/backend
user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}"
environment:
HOME: /tmp
GOCACHE: /tmp/go-build
GOMODCACHE: /tmp/go-mod
CANVAS_BACKEND_ADDR: ":8080"
CANVAS_BACKEND_DATA_DIR: /data
CANVAS_DATABASE_DRIVER: ${CANVAS_DATABASE_DRIVER:-sqlite}
DATABASE_URL: ${DATABASE_URL:-}
REDIS_URL: ${REDIS_URL:-}
CANVAS_WORKER_CONCURRENCY: ${CANVAS_WORKER_CONCURRENCY:-3}
CANVAS_CHANNEL_CONCURRENCY: ${CANVAS_CHANNEL_CONCURRENCY:-3}
CANVAS_REGISTRATION_ENABLED: ${CANVAS_REGISTRATION_ENABLED:-false}
CANVAS_ALLOW_PRIVATE_UPSTREAMS: ${CANVAS_ALLOW_PRIVATE_UPSTREAMS:-false}
CANVAS_ALLOWED_PRIVATE_UPSTREAM_HOSTS: ${CANVAS_ALLOWED_PRIVATE_UPSTREAM_HOSTS:-}
CANVAS_CORS_ORIGINS: ${CANVAS_CORS_ORIGINS:-http://localhost:3000}
# 服务器访问地址:Agent 看图与生成参考图都靠它签发上游可取到的短时链接。
CANVAS_PUBLIC_BASE_URL: ${CANVAS_PUBLIC_BASE_URL:-}
GIN_MODE: debug
volumes:
- type: bind
source: .
target: /workspace
# 禁止 Compose 静默创建新数据目录,避免开发时误用另一套账号数据。
- type: bind
source: ./.local/project-workbench-debug
target: /data
bind:
create_host_path: false
# 持久化首次下载和 CGO 编译结果,容器重建后继续复用开发缓存。
- type: bind
source: ./.local/cache/go-build
target: /tmp/go-build
bind:
create_host_path: false
- type: bind
source: ./.local/cache/go-mod
target: /tmp/go-mod
bind:
create_host_path: false
ports:
- "127.0.0.1:${CANVAS_BACKEND_HOST_PORT:-8080}:8080"
init: true
web:
image: oven/bun:1.3.13
working_dir: /workspace/web
command: ["sh", "-c", "bun install --frozen-lockfile && bun run dev"]
environment:
VITE_API_PROXY_TARGET: http://backend:8080
VITE_TLDRAW_LICENSE_KEY: ${VITE_TLDRAW_LICENSE_KEY:-}
volumes:
- type: bind
source: .
target: /workspace
- web-node-modules:/workspace/web/node_modules
- web-bun-cache:/root/.bun/install/cache
ports:
- "${CANVAS_WEB_HOST_PORT:-3000}:3000"
depends_on:
- backend
init: true
volumes:
web-node-modules:
web-bun-cache: