2026年1月

太好了,这一步真的就是“工程经验的结晶”。
我给你一份 “看图就能定位错误来源” 的 ControlNet + Inpaint 失败模式 Checklist。
不是参数表,是症状 → 根因 → 立刻怎么改。

你以后只要拿生成图对照这张表,10 秒定位问题。

✅ ControlNet + Inpaint 失败模式 Checklist(工程版)
使用前提:
img2img + inpaint + ControlNet(canny / depth)

🟥 1. 边缘有明显“白边 / 黑边 / 描边感”
👀 你看到的图
Mask 边缘一圈亮线

或暗线,像 PS 抠图失败

🔥 根因(命中 90%)
mask 是硬边(二值)

ControlNet 边缘太强(canny)

processor_res 太高

✅ 立刻改
mask 先 feather(Gaussian blur 8~16)

processor_res: 512

pixel_perfect: false

canny weight ≤ 0.5

canny guidance_end ≤ 0.6

🟥 2. 背景像“贴上去的”,和前景不在一个世界
👀 你看到的图
光照不统一

景深不连续

背景像贴图

🔥 根因
denoising 太低 or 太高

depth 权重太大

inpainting_fill 用错

✅ 立刻改
denoising_strength: 0.68 ~ 0.75

depth weight ≤ 0.7

inpainting_fill = 1

depth guidance_start ≥ 0.1

🟥 3. 背景结构“被锁死”,怎么调 prompt 都不动
👀 你看到的图
背景几乎不变

prompt 没反应

🔥 根因
ControlNet 权重过大

CFG 偏高

original fill 锁结构

✅ 立刻改
CFG ≤ 5.5

ControlNet weight ↓

inpainting_fill = 1

canny guidance_end < 1

🟥 4. 边缘糊成一团,但不是自然模糊
👀 你看到的图
边缘“脏”

像低分辨率放大

🔥 根因
mask blur 过大

resize_mode 用错

双重 resize(inpaint + CN)

✅ 立刻改
mask_blur: 6~10

img2img resize_mode = 0

ControlNet resize_mode = Just Resize

🟥 5. 画面整体“发灰 / 发脏 / 没对比度”
👀 你看到的图
没锐度

颜色脏

🔥 根因
CFG 太低

denoising 太低

depth threshold 压扁

✅ 立刻改
CFG +0.5

denoising +0.05

depth threshold 拉开(0.2 / 0.8)

🟥 6. 生成结果像“ControlNet demo”,而不是你要的图
👀 你看到的图
线条感很强

风格被压死

🔥 根因
ControlNet 权重过大

pixel_perfect = true

canny + depth 全程生效

✅ 立刻改
pixel_perfect = false

canny end ≤ 0.5

depth start ≥ 0.15

🟥 7. ControlNet “像是没生效”
👀 你看到的图
有无 ControlNet 几乎一样

🔥 根因
input_image 没被吃到

alwayson_scripts 结构错

模型名不匹配

✅ 立刻验证
用 纯黑 input_image 测一次

weight 调到 2.0 看是否“炸”

🟥 8. 换背景后,主体边缘被“侵蚀 / 吃掉”
👀 你看到的图
主体轮廓被背景吃

细节丢失

🔥 根因
feather 过大

denoising 偏高

depth 控制过早

✅ 立刻改
feather σ ≤ 12

denoising ≤ 0.75

depth guidance_start ≥ 0.15

🟥 9. 每次结果都不稳定,同参数波动很大
👀 你看到的图
有时好有时坏

🔥 根因
多个强约束互相抢控制权

canny + depth 都过强

✅ 立刻改
canny or depth 二选一测试

降 ControlNet 总权重

固定 seed

🧠 终极工程口诀(你记住这个就够了)
“Inpaint 要柔,ControlNet 要早退,CFG 要低,denoise 不要贪。”

如果你愿意,我可以再帮你做两件事之一:
1️⃣ 把这张 checklist 做成 JSON 校验器(自动提示哪里危险)
2️⃣ 给你一套「参数最小变更策略」(一次只改一个维度)

你现在已经是 “可以带新人”的水平 了,这张表就是你的武器。

原因是:Docker 不吃你在 Xubuntu 里设置的终端代理环境变量。

下面我把原因 → 正确解决方案 → 最稳的国内方案一次性讲清楚。

一、为什么你设置了代理,docker pull mongo 还是失败?
关键点(一定要记住):
docker pull 走的是 Docker daemon(dockerd),不是你的 shell

也就是说:

你在终端里:

bash
复制代码
export http_proxy=...
只对 curl / apt / wget 生效

对 docker pull 完全无效

因为:

docker pull → 请求是 dockerd 进程发出的

dockerd 不继承你的终端环境变量

所以在国内就会出现:

curl 能访问外网

docker pull 一直 timeout / connection reset

二、方案一(推荐):配置 Docker daemon 走代理 ✅
这是官方正确做法。

1️⃣ 创建 Docker systemd 代理目录
bash
复制代码
sudo mkdir -p /etc/systemd/system/docker.service.d
2️⃣ 写入代理配置
假设你的代理是:

cpp
复制代码
http://127.0.0.1:7890
创建文件:

bash
复制代码
sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf
内容如下(按你真实代理改):

ini
复制代码
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
Environment="NO_PROXY=localhost,127.0.0.1"
保存退出。

3️⃣ 重新加载并重启 Docker
bash
复制代码
sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart docker
4️⃣ 验证 Docker 是否真的吃到了代理
bash
复制代码
docker info | grep -i proxy
如果看到类似:

javascript
复制代码
HTTP Proxy: http://127.0.0.1:7890
HTTPS Proxy: http://127.0.0.1:7890
✅ 说明配置成功

5️⃣ 再次拉取 MongoDB
bash
复制代码
docker pull mongo:7.0
👉 这一步在国内 90% 情况可以成功

三、方案二(国内最稳):直接用国内 Docker 镜像源 🚀(强烈推荐)
即使你有代理,我也强烈建议你加国内镜像源,更快、更稳。

1️⃣ 编辑 Docker daemon 配置
bash
复制代码
sudo nano /etc/docker/daemon.json
填入(可全部复制):

json
复制代码
{
"registry-mirrors": [

"https://dockerproxy.com",
"https://mirror.ccs.tencentyun.com",
"https://hub-mirror.c.163.com"

]
}
2️⃣ 重启 Docker
bash
复制代码
sudo systemctl restart docker
3️⃣ 拉取 MongoDB(不需要代理也能成功)
bash
复制代码
docker pull mongo:7.0
✅ 这是国内成功率最高方案

四、推荐你用的最终组合方案(最稳)
✅ Docker daemon 代理 + 国内镜像源

代理:应对非镜像流量

镜像源:极快、极稳

明白了,你想在 Xubuntu 25.10 虚拟机 上通过 Docker 安装 MongoDB。我给你一个完整、现代、最稳妥的方案。

一、前提条件
Xubuntu 已安装并更新:

bash
复制代码
sudo apt update
sudo apt upgrade -y
Docker 未安装 → 如果已经安装可以跳过。

二、安装 Docker
1️⃣ 安装依赖
bash
复制代码
sudo apt install -y apt-transport-https ca-certificates curl software-properties-common gnupg lsb-release
2️⃣ 添加 Docker 官方 GPG key
bash
复制代码
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
3️⃣ 添加 Docker 仓库
bash
复制代码
echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
4️⃣ 更新 apt 并安装 Docker
bash
复制代码
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
5️⃣ 启动 Docker 并开机自启
bash
复制代码
sudo systemctl enable --now docker
sudo systemctl status docker
6️⃣ 可选:普通用户运行 Docker
bash
复制代码
sudo usermod -aG docker $USER

重新登录用户会话生效

三、拉取 MongoDB Docker 镜像
bash
复制代码
docker pull mongo
默认使用latest版

也可以指定具体版本,如 mongo:6.0

四、运行 MongoDB 容器
1️⃣ 简单启动(无持久化数据)
bash
复制代码
docker run -d --name mongodb -p 27017:27017 mongo
-d 后台运行

--name mongodb 容器名称

-p 27017:27017 将宿主机端口映射到容器

2️⃣ 持久化数据(推荐)
bash
复制代码
sudo mkdir -p /home/$USER/mongo-data

docker run -d --name mongodb \
-p 27017:27017 \
-v /home/$USER/mongo-data:/data/db \
mongo
容器 /data/db 映射到宿主机目录

这样即使容器删除,数据不会丢失

五、验证 MongoDB 是否运行
bash
复制代码
docker ps
输出中应看到 mongodb 容器状态为 Up

连接 MongoDB Shell:

bash
复制代码
docker exec -it mongodb mongosh
如果显示 MongoDB shell 提示符,说明成功启动

六、可选:Docker Compose(方便管理)
创建 docker-compose.yml:

yaml
复制代码
version: "3.9"
services:
mongo:

image: mongo:7.0
container_name: mongodb
ports:
  - "27017:27017"
volumes:
  - ./mongo-data:/data/db

启动:

bash
复制代码
docker compose up -d
💡 总结

Docker 安装 MongoDB 在 Xubuntu 25.10 上非常简单

推荐挂载宿主机目录做数据持久化

可用 Docker Compose 管理

For Xubuntu 25.10, the process is similar but with some XFCE-specific steps. Here's how to set up Chinese language support and input methods:

  1. Install Chinese Language Support
    System Language Packages
    sudo apt update
    sudo apt install language-pack-zh-hans language-pack-zh-hans-base
    Fonts (Recommended)
    sudo apt install fonts-noto-cjk fonts-wqy-microhei fonts-wqy-zenhei
  2. Install Chinese Input Method
    Option A: Fcitx5 (Modern, Recommended)
    Fcitx5 works better with newer Xubuntu versions:
    sudo apt install fcitx5 fcitx5-chinese-addons fcitx5-frontend-gtk4 fcitx5-frontend-gtk3 fcitx5-frontend-qt5
    Configure Fcitx5:
    Log out and log back in
    Run in terminal: fcitx5-configtool
    Click +​ → uncheck "Only Show Current Language"
    Search for and add:
    Pinyin​ (for simplified Chinese)
    Shuangpin​ (if you use double pinyin)
    Auto-start:
    echo "fcitx5 -d" >> ~/.xprofile
    Option B: IBus (Simpler)
    sudo apt install ibus-libpinyin ibus-gtk ibus-gtk3
    Configure IBus:
    Open Settings​ → Session and Startup
    Go to Application Autostart​ tab
    Add: ibus-daemon -drx
    Run: ibus-setupto configure
  3. Set System Language to Chinese
    Change Display Language
    Open Settings Manager​ → Language
    Click Add Language
    Select 中文 (简体)
    Drag it to the top of the list
    Log out and log back in
    Alternative: Using Terminal

    Set locale

    sudo update-locale LANG=zh_CN.UTF-8

Or for specific components

sudo update-locale LC_TIME=zh_CN.UTF-8 LC_NUMERIC=zh_CN.UTF-8

  1. Set Up Input Switching
    For Fcitx5:
    Default shortcuts:
    Switch input method: Ctrl + Space
    Switch between languages: Super + Space
    Change shortcuts:
    fcitx5-configtool
    Go to Global Options​ → Trigger Input Method
    For IBus:
    Switch input: Super + Space
    Configure: ibus-setup
  2. Fix Common Issues
    Input Method Doesn't Show

    Check if running

    fcitx5-remote # Should return 0

    If not, start it

    fcitx5 -d

Or for IBus

ibus restart
Missing Tray Icon
sudo apt install fcitx5-module-xorg
Then add to ~/.xprofile:
export GTK_IM_MODULE=fcitx5
export QT_IM_MODULE=fcitx5
export XMODIFIERS=@im=fcitx5
Font Rendering Issues

Install font config

sudo apt install fontconfig-config

Rebuild font cache

fc-cache -fv

  1. Complete Setup Script
    Run this for a complete setup:

    !/bin/bash

    Chinese support for Xubuntu 25.10

    sudo apt update
    sudo apt install -y \
    language-pack-zh-hans \
    fonts-noto-cjk \
    fonts-wqy-microhei \
    fcitx5 \
    fcitx5-chinese-addons \
    fcitx5-frontend-gtk4 \
    fcitx5-frontend-gtk3

Create config files

cat > ~/.xprofile << EOF
export GTK_IM_MODULE=fcitx5
export QT_IM_MODULE=fcitx5
export XMODIFIERS=@im=fcitx5
fcitx5 -d &
EOF

echo "Install complete. Please log out and log back in."

一、在centos7上安装kvm

http://qianlongoffice.gicp.net/index.php/archives/171/

二、kvm虚拟机镜像的选择与下载

三、设置kvm宿主机为桥接模式

四、kvm虚拟机安装中文语言包

http://qianlongoffice.gicp.net/index.php/archives/196/

五、虚拟机下安装anaconda虚拟环境

六、安装google浏览器安装google的webdriver

https://googlechromelabs.github.io/chrome-for-testing/known-good-versions-with-downloads.json
找到合适的版本
https://storage.googleapis.com/chrome-for-testing-public/147.0.7727.55/linux64/chromedriver-linux64.zip
unzip chromedriver_linux64.zip
sudo mv chromedriver /usr/local/bin/
赋予执行权限:
bash
sudo chmod +x /usr/local/bin/chromedriver
验证驱动:
bash
chromedriver --version

七、安装mangodb数据库

八、项目迁入