无限画布无限画布

Docker 部署

使用 Docker Compose 部署无限画布

Docker 部署

如果你希望在自己的机器或服务器上运行项目,可以直接使用 Docker Compose。

使用发布镜像

git clone git@github.com:basketikun/infinite-canvas.git
cd infinite-canvas
docker compose up -d

启动后访问:

http://localhost:3000

本地构建镜像

如果需要基于当前源码构建镜像:

docker compose -f docker-compose.local.yml up -d --build

文档站镜像

文档站位于 docs/ 目录,按带服务端能力的 Next.js standalone 应用单独构建,不打进主应用镜像。

使用发布镜像:

cd docs
docker compose up -d

基于当前源码本地构建:

cd docs
docker compose -f docker-compose.local.yml up -d --build

数据说明

当前主应用镜像只启动 Next.js。画布、我的素材、生成记录和 AI API Key 默认保存在浏览器本地;第三方提示词由浏览器前端直连拉取,不需要额外挂载数据目录。

统计分析(可选)

项目默认不接入任何统计:不设置下列环境变量时,页面不会加载任何统计脚本,也不会发送任何外部请求。你在自己的部署上想查看流量时,设置对应环境变量即可,无需修改代码或重新构建镜像——镜像启动时会据此生成运行期配置。

统计按「每家一个独立变量」配置:填了谁就启用谁,可同时启用多家(例如 GA4 + 百度一起开)。仅支持 GA4 与百度,两者都只接受 ID,脚本地址由代码固定拼接,不接受任意脚本地址或内联 JS。

变量说明
ANALYTICS_GA4_IDGoogle Analytics 4 衡量 ID(G-XXXX
ANALYTICS_BAIDU_ID百度统计站点 ID(hm.js? 后面那串 hash)

docker-compose.ymlenvironment 中配置(文件内已附注释示例),下例同时启用 GA4 与百度:

services:
  app:
    image: ghcr.io/basketikun/infinite-canvas:latest
    ports:
      - "3000:3000"
    environment:
      ANALYTICS_GA4_ID: G-XXXXXXXXXX
      ANALYTICS_BAIDU_ID: e8263761cc5c32f5f7a855b8203b965a

或使用 docker run

docker run -d -p 3000:3000 \
  -e ANALYTICS_GA4_ID=G-XXXXXXXXXX \
  -e ANALYTICS_BAIDU_ID=e8263761cc5c32f5f7a855b8203b965a \
  ghcr.io/basketikun/infinite-canvas:latest

单页应用的路由切换会自动向所有已启用的统计上报 pageview。

请只在你自己的站点上配置统计 ID,不要把 ID 提交进仓库;fork 或自托管本项目的用户默认不会产生任何统计。

On this page