☰
10 分钟跑通 InvokeAI:从本地安装到容器化部署的实操路径
2026/10/16 2:03:54 网站建设 项目流程

10 分钟跑通 InvokeAI:从本地安装到容器化部署的实操路径

【免费下载链接】InvokeAIInvoke is a leading creative engine for Stable Diffusion models, empowering professionals, artists, and enthusiasts to generate and create visual media using the latest AI-driven technologies. The solution offers an industry leading WebUI, and serves as the foundation for multiple commercial products.项目地址: https://gitcode.com/GitHub_Trending/in/InvokeAI

InvokeAI 部署看起来不复杂:克隆仓库、装依赖、起服务。但实际操作里第一个卡人的地方是环境——Python 版本被锁在 3.12,torch 构建还要按 GPU 类型选,装错一步就会直接报错。所以与其空谈本地和容器哪个好,不如按三种真实场景给出具体路径:"只想跑起来"、"要隔离可复现"、"长期挂在生产上"。

第一次跑通:用 uv 走通本地部署 InvokeAI 的路径

系统要求里写得很明确:Python 锁定 3.12。好消息是官方手动安装文档用uv从头管理环境,uv 自带 Python 3.12,系统里装了什么版本都不用管。全程就四条命令:

git clone https://gitcode.com/GitHub_Trending/in/InvokeAI && cd InvokeAI

克隆仓库并进入目录。

uv venv --relocatable --prompt invoke --python 3.12 --python-preference only-managed .venv

这条命令在.venv下建一套独立的 Python 3.12 环境:

source .venv/bin/activate uv pip install . --torch-backend=cu130

激活环境后把仓库作为包安装进去。--torch-backend=cu130表示拉取 CUDA 版 torch,NVIDIA 显卡才需要,没有 NVIDIA 显卡就省掉它;AMD 显卡要单独装 ROCm 的 wheel,别自己拼参数,按手动安装文档里的对照表走。装完启动服务:

invokeai-web --root ~/invokeai

--root参数指定运行时目录,模型和生成图都放在这个路径下。浏览器打开http://localhost:9090,第一次先进 Model Manager 标签页下载一个模型再生成。

第一张图出出来,你就知道这条路适不适合自己。如果不想动系统环境,或者要在另一台机器上复现同样的环境,走容器更省心。

🐳 只想跑起来:容器化部署 InvokeAI 的最小命令集

Docker 部署相关的文件都在 docker/ 目录:Dockerfile 负责构建镜像,docker-compose.yml 定义服务,run.sh 是 compose 的包装脚本。只想跑起来的话不用碰这些文件,官方镜像一条命令就行:

docker run --runtime=nvidia --gpus=all --publish 9090:9090 --volume ~/invokeai:/invokeai ghcr.io/invoke-ai/invokeai

这条命令拉取官方镜像并启动容器:--gpus=all把 GPU 透传给容器,9090:9090发布 WebUI 端口,--volume把本机~/invokeai挂到容器内/invokeai运行时目录。最后这项容易被漏掉,不加它的话图片和模型都留在容器里,容器一删就没了。

![InvokeAI容器化部署后的Image Map功能界面](https://raw.gitcode.com/GitHub_Trending/in/InvokeAI/raw/aa46003581e2c482e03e62116f68ef3c3a6f0233/docs/src/content/docs/Users Guide/09.Image Map/assets/imagemap-1.png?utm_source=gitcode_repo_files)

容器里的界面和本地完全一致,Canvas、workflows、Image Map 都能用。唯一前提是宿主机 Docker 已经配好 GPU,Docker 部署文档里列了完整前置条件。

真正长期用:把运行时目录与 GPU 配置变得可复现

长期挂着用的时候,一条命令会显得脆弱:每次想改参数都得重写整条命令。compose 做法是把配置写进.env文件:

cd docker && cp .env.sample .env && ./run.sh

run.sh 会读.env并自动从docker-compose.yml里选对应服务,默认cudaprofile;填GPU_DRIVER=rocm就切到 AMD 服务,宿主机 render 组 ID 要同步填RENDER_GROUP_ID。

有两个变量值得留意:INVOKEAI_ROOT是运行时目录在宿主机的路径,默认~/invokeai;CONTAINER_UID设置容器内用户 UID,让它在宿主机目录里创建的文件归你的用户所有,填id -u的输出即可。模型缓存默认落在INVOKEAI_ROOT/.cache/huggingface,整目录备份时会一起带走。

![InvokeAI部署环境中的项目管理切换界面](https://raw.gitcode.com/GitHub_Trending/in/InvokeAI/raw/aa46003581e2c482e03e62116f68ef3c3a6f0233/docs/src/content/docs/Users Guide/assets/project-switcher.webp?utm_source=gitcode_repo_files)

长期用时区分多个项目的工作是最常见的需求,界面里自带项目切换器。需要多人共用一套服务的话,文档里有专门的多用户模式,账号隔离是内置的。

卡住的时候:GPU 识别、macOS 与 ARM 三个高频故障点

容器起来了但 GPU 识别不到,九成是宿主机 Docker 没配 GPU:NVIDIA 需要 daemon 注册nvidiaruntime,AMD 要透传/dev/kfd和/dev/dri并对齐 render 组 ID,排查入口看FAQ。

macOS 上别跟 Docker 较劲,容器在这套系统里访问不到 GPU,官方建议直接本地安装;坚持用容器至少给 Docker 分配 16GB 内存。

ARM 机器(树莓派 5、ARM 服务器之类)上,x86_64 镜像没有 GPU 内核,只能构建纯 CPU 镜像:

docker build -f docker/Dockerfile --build-arg GPU_DRIVER=cpu -t invokeai:cpu .

GPU_DRIVER=cpu表示构建纯 CPU 版。本地生成速度不高,但 API 模型类功能(如 GPT Image)不依赖本地 GPU,照常可用。

还有一个细节:运行时目录里的文件在宿主机删不掉,通常是容器内用户 UID 和宿主机用户不一致,把CONTAINER_UID=$(id -u)设上再重启即可。

读完可以直接做的几件事:

  • 快速验证就跑一条docker run命令,确认流程没问题后再切到.env+run.sh的组合长期用
  • 启动前先给INVOKEAI_ROOT选定专用目录(最好是空间充裕的磁盘),模型和图片都在里面
  • torch 安装报错时先查 GPU 型号再对照手动安装文档的选型表,多数"装不上"其实是参数选错

【免费下载链接】InvokeAIInvoke is a leading creative engine for Stable Diffusion models, empowering professionals, artists, and enthusiasts to generate and create visual media using the latest AI-driven technologies. The solution offers an industry leading WebUI, and serves as the foundation for multiple commercial products.项目地址: https://gitcode.com/GitHub_Trending/in/InvokeAI

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询