TanStarter Docs

MkImage

了解如何部署 MkImage - 基于 TanStarter 构建的 AI 生图网站

MkImage 是一个基于 TanStarter 构建的 AI 生图网站,支持文生图和图生图,也展示了如何用 TanStarter 构建真实上线的产品。

MkImage 的源码位于 mkfast-app 仓库。该仓库不包含在 TanStarter 模板权益中,不要因此事私信我。

由于 MkImage 基于 TanStarter 模板开发,配置和部署流程与模板基本一致。请参考 快速开始环境配置网站部署 文档完成基础设置。本文档重点介绍 MkImage 特有的额外配置。

AI 生图模型服务商

MkImage 支持三个 AI 生图服务商。你需要注册账号,并在你要使用的服务商后台生成 API Key。

Fal.ai 是一个快速的 AI 模型推理平台。

  1. fal.ai 创建账号
  2. 进入管理后台的 API Keys 页面
  3. 点击 Create API Key 生成新的密钥
  4. 复制密钥并设置为 FAL_KEY 环境变量
.env
IMAGE_MODEL_PROVIDER='fal'
FAL_KEY='your-fal-api-key'

其他生图相关配置

变量说明
IMAGE_MODEL_PROVIDER生图服务商:falapimartkie
VITE_SHOW_IMAGE_PROVIDER在生成页面显示服务商选择器(true/false
VITE_ENABLE_IMAGE_GENERATION启用生图功能(true/false

存储(Cloudflare R2)

MkImage 使用 Cloudflare R2 来存储提示词数据和提示词预览图片。你需要配置 R2 来导入和展示这些内容。

启用公共访问

允许对存储桶的公共访问:

  • Settings > Public Development URL,点击 Enable
  • 将公共访问 URL 保存为 R2_PUBLIC_URL
  • 为存储桶的公共访问设置自定义域名(推荐使用自定义域名以提高安全性)

创建 API 令牌

创建新的 API 令牌:

  • Storage & databases > R2 object storage > API Tokens > Manage,点击 Create User API Token
  • 将权限设置为对存储桶的 Object Read & Write
  • 创建 API 令牌,获取 Access Key IDSecret Access Key

设置环境变量

设置以下环境变量:

.env
R2_BUCKET_NAME='your-bucket-name'
R2_ACCESS_KEY_ID='your-access-key-id'
R2_SECRET_ACCESS_KEY='your-secret-access-key'
R2_PUBLIC_URL='https://your-r2-public-url.com'

导入内置提示词

MkImage 内置了一套提示词数据集,你可以将其导入到数据库中。导入脚本会将提示词数据和预览图片同步到 D1 数据库和 R2 存储。

下载提示词数据集

首先,下载最新的提示词数据集:

pnpm prompt:download

执行数据库迁移

确保提示词相关的数据库表已创建:

# 本地开发
pnpm db:migrate:local

# 远程 / 生产环境
pnpm db:migrate:remote

同步提示词到本地(开发环境)

将提示词导入本地 D1 数据库和 R2 存储:

pnpm prompts:sync:local

这将把提示词记录插入数据库,并将预览图片上传到 R2。

同步提示词到远程(生产环境)

在本地验证无误后,将提示词同步到远程生产环境:

pnpm prompts:sync:remote

常用参数

同步脚本支持以下可选参数:

参数说明
--limit=<n>只导入前 N 条记录(适合测试)
--skip-images跳过图片下载/上传(仅导入文本)
--force强制重新导入已存在的提示词
--dry-run预览变更,不写入 DB/R2
--concurrency=<n>并行导入数量(默认:10)

更新提示词

未来更新提示词数据集:

# 拉取最新数据集
pnpm prompt:download

# 先同步到本地验证
pnpm prompts:sync:local

# 确认无误后同步到生产环境
pnpm prompts:sync:remote

已存在的提示词默认会被跳过,只有新提示词和缺失的图片会被导入,除非你传入 --force 参数。

环境变量汇总

以下是在 TanStarter 基础配置之上,MkImage 需要额外配置的所有环境变量:

.env
# 生图服务商 (apimart、fal 或 kie)
IMAGE_MODEL_PROVIDER='apimart'
VITE_SHOW_IMAGE_PROVIDER='false'
VITE_ENABLE_IMAGE_GENERATION='true'

# Fal
FAL_KEY=''

# APIMart
APIMART_KEY=''

# KIE
KIE_KEY=''

# 存储 (R2) - 用于提示词和提示词图片
R2_BUCKET_NAME=''
R2_ACCESS_KEY_ID=''
R2_SECRET_ACCESS_KEY=''
R2_PUBLIC_URL=''

参考

下一步

最后更新于

本页目录