> ## Content Index
> Fetch the complete content index at: https://isoziyuan.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# 一条命令，给自己的服务器装个「输入文字就出视频」的工作台（小白向）
- URL: https://isoziyuan.com/p/100172/
- Published: 2026-09-30T03:52:20.000Z
- Updated: 2026-09-30T04:01:08.000Z
- Description: 不需要懂 Linux，不需要懂 Docker。复制两行命令，几分钟装好一个属于自己的文生视频工作台，还能被 Cherry Studio / NextChat 等客户端直接调用。从租服务器到出第一条视频，全程保姆级。
- Author: Isoziyuan
- Tags: AI 视频, 自建服务, 教程, VPS, 一键脚本

# 一条命令，给自己的服务器装个「输入文字就出视频」的工作台

> 不需要懂 Linux，不需要懂 Docker。复制一行命令，回车，等几分钟就能用。  
> 这篇文章写给**完全没碰过服务器**的人。

---

## 这是个什么东西？

先说清楚它能干什么，再看要不要折腾。

装好之后你会拥有一个**属于自己**的网页工具：

- 浏览器打开一个网址，左边有「生成视频」按钮；
- 写一句话（比如"傍晚的海边，一只金毛在沙滩上奔跑，电影感"），点一下；
- 等 1\~2 分钟，一段视频就出来了，可以直接下载保存。

它还能被别的软件调用——比如 **Cherry Studio**、**NextChat** 这类支持 OpenAI 接口的客户端，填上地址和密钥就能直接在里面生成视频。

**和公开网站上的 AI 视频工具比，好处是：**

|       | 用公开网站         | 用这个工具              |
| ----- | ------------- | ------------------ |
| 排队    | 和所有人一起挤       | 只有你，自己说了算          |
| 额度/次数 | 看平台脸色         | 用你自己的账号，你加几个就用几个   |
| 数据    | 上传的东西经过别人的服务器 | 全在你自己的机器上          |
| 接口    | 大多不给裸接口       | 给你标准 OpenAI 接口，随便接 |

**代价是：** 你需要一台 24 小时开机的服务器（下面讲），以及一个 muse.ai 账号。

---

## 一、先搞清楚：这里说的「服务器」是什么

如果你从没碰过服务器，记住三句话就够了：

1\. **它是一台 24 小时开着的电脑**，放在机房里，不是你桌上那台。工具就装在它上面，你关掉自己的电脑，它照样跑。 2\. **是租的，不是买的。** 阿里云 / 腾讯云 / 华为云 / AWS / Oracle 都有，搜「云服务器」或者「VPS」， 最低配**一个月十几块到几十块**。选 **2 核 4G 内存，系统选 Ubuntu 或 Debian** 就行。 3\. **租完你会拿到三样东西：**

- 一个 **IP 地址**（长得像 `43.201.63.145`）
- 一个 **root 密码**（登录用的）
- 控制台里一个**「安全组」或「防火墙」设置页**（这个很重要，后面要在这里放行端口）

> 💡 **怎么连上服务器？** 在你租服务器的控制台里，通常有个「登录」「远程连接」按钮，点开就是一个黑色命令行窗口，不用额外装软件。  
> 如果你习惯用自己电脑的终端，也可以输入 `ssh root@你的IP`，提示输密码时输 root 密码。

> ⚠️ **没有服务器怎么办？** 那这个工具暂时用不了——它必须装在一台常开的机器上。  
> 先跳过，等你有了机器再回来照着做。

---

## 二、装之前，确认这几样

| 需要                | 说明                                                                       |
| ----------------- | ------------------------------------------------------------------------ |
| **一台服务器**         | Linux 系统（Debian / Ubuntu / CentOS / RHEL / Alpine 都行），能 SSH 登录，有 root 权限 |
| **至少 2 核 4G**     | 因为要跑一个"隐形浏览器"，内存小了会卡                                                     |
| **至少 10G 空闲磁盘**   | 程序本体 + 浏览器大概几百 MB                                                        |
| **能访问外网**         | 第一次安装要从 GitHub 下载程序，网速慢会久一点                                              |
| **两个没被占用的端口**     | 默认用 18610 和 8090，被占用了脚本会自动换                                              |
| **一个 muse.ai 账号** | 这是"燃料"，装完必须导入一个账号才能生成视频                                                  |

> ⚠️ **端口一定要在云服务商控制台里放行**  
> 阿里云 / 腾讯云 / AWS / Oracle 都有"安全组"或"防火墙规则"这一页。  
> **装完如果网页打不开，九成是这里没放行 `8090` 和 `18610`。** 记住这句话，能省你半小时。

---

## 三、开始安装（真的只有两条命令）

SSH 登录到你的服务器，把下面整段复制粘贴进去，回车：

```bash
# 1. 下载安装脚本
curl -fsSL -o install.sh https://raw.githubusercontent.com/yys9253462-gif/muse-video-installer/main/install.sh

# 2. 跑起来（会问你 1-2 个问题）
sudo bash install.sh
```

就这样。脚本会自己检查系统、装好缺的东西、下载程序、配好密钥、启动服务。

**如果脚本下载不下来**（网络原因），三种办法任选： 1\. 用 `scp` 把 `install.sh` 传上去：`scp install.sh root@你的服务器IP:/root/` 2\. 浏览器打开上面的链接，复制全部内容，在服务器上新建文件粘贴进去 3\. 装了 `git` 的话：`git clone https://github.com/yys9253462-gif/muse-video-installer.git`

**想全自动、一个都不问：**

```bash
sudo bash install.sh --yes
```

**想先看看它会做什么、但不动系统：**

```bash
sudo bash install.sh --dry-run
```

> 💡 装完之后，你下载的那份 `install.sh` 删掉也没关系——脚本会把自己另存一份到安装目录里（如 `/opt/mvw/install.sh`），以后升级、查状态、卸载都用那一份。安装结束时也会把这条命令直接打印给你。

---

## 四、它会问你什么？

**只有 1-2 个问题，拿不准直接按回车用默认值。**

| 问题      | 默认       | 说明                           |
| ------- | -------- | ---------------------------- |
| 装到哪个目录？ | /opt/mvw | 一般不用改                        |
| 用哪个端口？  | 自动挑      | 先看 18610 / 8090 有没有被占，占了就往后找 |

然后它就自己干活了，大概 **2\~5 分钟**，你会看到这样的输出：

```
▸ 开始检查环境
  ✓ 系统：debian 12（用 apt 装东西）
▸ 检查并安装 git / docker / docker compose
  ✓ docker 已就绪
▸ 准备程序文件
  ✓ 程序本体下载完成
▸ 配置密钥
  ✓ 已生成一把随机密钥（只显示在最后，请留意）
▸ 写入配置
  ✓ 接口端口 18610，网页端口 8090
▸ 启动服务
  ✓ 容器已启动
▸ 等待接口就绪
  ✓ 接口已响应（HTTP 401 属正常，说明在跑）
▸ 配置网页服务
  ✓ 网页服务已启动
```

> "HTTP 401 属正常"这句可能反直觉——401 是"未授权"，但在这里恰恰说明**服务活着且在正常鉴权**，是好事。

---

## 五、装完了，怎么用？

安装结束会给你这几行信息，**建议截图保存**（尤其 API Key）：

```
网页地址：      http://你的服务器IP:8090/
接口地址：      http://你的服务器IP:18610/v1
API Key：       m2a_xxxxxxxxxxxxxxxxxxxx
安装目录：      /opt/mvw
账号池面板：    http://你的服务器IP:18610/admin?key=你的Key
```

### 第 1 步：打开网页看看

浏览器访问 `http://你的服务器IP:8090/`。

看到左边有「生成视频」按钮、右上角状态灯是**绿色**，就说明装好了。

### 第 2 步：导入你的 muse.ai 账号（⚠️ 必须做）

这一步是唯一"稍微费点事"的地方，但也只需做一次。

**为什么要做？** 视频工作台本身不会出视频，它是靠 **muse.ai 的账号**来出片的。你的服务器上**没有浏览器**，所以这一步要在**你自己的电脑**上完成。

给你两条路，**任选其一**：

|        | 方式        | 适合谁      | 要装什么   |
| ------ | --------- | -------- | ------ |
| **🅰** | 导号小工具（推荐） | 想省事的     | Python |
| **🅱** | 网页手动粘贴    | 完全不想装东西的 | 无      |

> 💡 **装了 Python 就选 🅰**——敲一条命令，剩下的它全问你。  
> **没 Python / 不想装**就选 🅱，代价是要自己从浏览器里抄 4 串字符。

---

### 🅰 导号小工具（推荐，就一条命令）

**先确认两件事（各看一次就行）：**

- **Python**：打开命令行敲 `python --version`，能显示版本号（如 `Python 3.12.1`）就跳过。没装就去 [python.org](https://www.python.org/downloads/?ref=isoziyuan.com) 下载，安装时**务必勾选 "Add Python to PATH"**（漏了这步后面会报"不是内部或外部命令"）。
- **浏览器**：Windows 自带的 **Edge** 就行，有 **Chrome** 更好，不用额外装。

**第 1 步：下载导号小工具**

下载这个文件，**存到桌面**（文件名叫 `get_muse_cookie.py`，别改名）：

```
https://raw.githubusercontent.com/yys9253462-gif/muse-video-installer/main/tools/get_muse_cookie.py
```

> 它就是一个普通的 Python 脚本，你可以用记事本打开看内容，**不会**在你电脑上偷偷装任何东西。

**第 2 步：敲一条命令**

在桌面打开命令行（Windows 按 `Win+R` → 输入 `cmd` → 回车），然后：

```bash
cd Desktop
python get_muse_cookie.py
```

它会问你两件事（从安装结束的输出里复制过去）：

| 它问什么    | 你填什么                                                         |
| ------- | ------------------------------------------------------------ |
| 服务器地址   | 你的服务器IP:18610                                                |
| API Key | 安装结束时显示的 m2a\_ 开头那串（随时可以用 sudo bash install.sh --status 查回来） |

填完它会**自动弹出一个浏览器窗口**。

> 💡 地址和 Key 它会**记住**，第二次起直接连敲两个回车就行。

**第 3 步：在弹出的窗口里登录 muse.ai**

用你平时的方式登录即可。**登录成功、能看到聊天界面后**，脚本会自己把账号传上服务器，你会看到：

```
  ✓ 导入成功！
      账号标签：你的邮箱
      账号 ID： 160c1f16435f
      cookie： 10 条
```

然后它会问你「**还要再导入一个 muse.ai 账号吗？**」：

- 只加一个 → 直接回车
- **想加多个** → 按 `y`，会弹出一个干净的浏览器窗口，登录**另一个** muse.ai 账号即可。想加几个就加几个。

**第 4 步：核对**

```bash
sudo bash install.sh --status
```

看到「账号池：**N** 个账号」就对上了。

**这一步常见的卡点：**

| 现象                 | 怎么办                                               |
| ------------------ | ------------------------------------------------- |
| python 不是内部或外部命令   | Python 装了但没勾 "Add to PATH"。重装一次并勾上                |
| 「没找到可用的浏览器」        | 装个 Chrome，或用 \--chrome "D:\\某处\\chrome.exe" 指定路径  |
| 「连不上服务器」           | ① 地址漏了冒号（要写 1.2.3.4:18610）② 安全组没放行 18610 端口       |
| 「API Key 不对」       | Key 复制少了字符。跑 \--status 看回来重新复制                    |
| 提示"你自己日常用的浏览器正在运行" | Chrome 系不允许同时开两个带调试端口的实例。把浏览器**完全退出**再重跑；或改用 Edge |
| 完全不想装浏览器/Python    | 用下面的 🅱 方案                                        |

---

### 🅱 网页手动粘贴（不装任何东西）

服务端的面板**自带导入框**。

**第 1 步：从浏览器里抄出 4 串 cookie**

1\. 在你自己的浏览器里**登录 muse.ai**（要先登录成功） 2\. 按 `F12` 打开开发者工具 → 切到 **Application**（中文版叫「应用」）标签页 3\. 左侧找到 **Cookies** → 点开 `https://muse.ai` 4\. 在右侧列表里依次找到这 **4 个名字**，双击它的 **Value** 列复制：

```
hatch_sess
hatch_gw
hatch_vml
hatch_native_auth_device
```

> ⚠️ 这 4 个的值都很长，**要完整复制**，少一个字符就不行。  
> 它们都标着 `HttpOnly ✓`——这正是为什么不能直接在控制台敲 `document.cookie` 读它们，必须到 Application 面板里看。

**第 2 步：拼成一行，粘进面板**

把这 4 个值拼成**一行**（用分号 + 空格分隔）：

```
hatch_sess=你复制的值; hatch_gw=你复制的值; hatch_vml=你复制的值; hatch_native_auth_device=你复制的值
```

打开面板 → 点「**添加账号**」→ 粘进去 → 保存：

```
http://你的服务器IP:18610/admin?key=你的Key
```

**想一次加多个？** 面板支持批量，**每行一个账号**：

```
acc-01 | hatch_sess=...; hatch_gw=...; hatch_vml=...; hatch_native_auth_device=...
acc-02 | hatch_sess=...; hatch_gw=...; hatch_vml=...; hatch_native_auth_device=...
```

---

### 第 3 步：回到网页，测试生成

接口地址和 Key 脚本已经**自动填好了**。直接写一段描述，点「生成视频」，等 **1\~2 分钟**出片。

### 第 4 步（可选）：让别的软件连上它

任何支持 **OpenAI 兼容接口**的客户端都能连：

| 填什么               | 填什么值                    |
| ----------------- | ----------------------- |
| API 地址 / Base URL | http://你的服务器IP:18610/v1 |
| API Key           | m2a\_xxxxxxxxxxxx       |
| 模型名               | 见账号池面板里列出的模型            |

> ⚠️ **地址末尾只有一个 `/v1`，不要写成 `//v1`**（多一个斜杠会连不上）。这是最常见的配置错误，没有之一。

---

## 六、几个你一定会用到的命令

脚本会**记住上次的配置**，所以重跑这些命令**不用再带参数**：

```bash
sudo bash install.sh --status      # 看运行状态 + 找回地址和 API Key
sudo bash install.sh --upgrade     # 升级到最新版（Key 不变）
sudo bash install.sh --uninstall   # 卸载（默认保留数据）
sudo bash install.sh --help        # 看全部用法
```

> 💡 **找不到安装脚本了？** 脚本在安装时会把自己存一份到安装目录，所以下面这条**永远可用**：  
> \`\`\`bash  
> sudo bash /opt/mvw/install.sh --status  
> \`\`\`

**再跑一次 `install.sh` 会怎样？** 会**接上已有安装**，不会重头来：

| 东西          | 行为                  |
| ----------- | ------------------- |
| 端口          | 沿用上次的               |
| **API Key** | **沿用上次的**（客户端不用重配）✅ |
| 账号数据        | 保留                  |
| 程序本体        | 拉取最新代码              |
| 容器          | 原地重建                |

所以"想改点东西再装一遍"是安全的。

**在小工具里直接管账号池**（不用打开网页）：

```bash
python get_muse_cookie.py                    # 导一个，它会问「还要再来一个吗」
python get_muse_cookie.py --count 3          # 一口气导 3 个（全自动）
python get_muse_cookie.py --list             # 看账号池现在有哪些账号
python get_muse_cookie.py --remove acc-02    # 删掉某个账号
```

---

## 七、遇到问题怎么办？

我把踩过的坑都列在这里，**照着查**。

### ❌ 网页打不开 / 一直转圈

1\. **先查云服务商的"安全组"**——90% 是这个原因。放行 TCP `8090` 和 `18610`。 2\. 在服务器上本地试一下： \`\` `bash curl -s -o /dev/null -w '%{http_code}\n' http://127.0.0.1:8090/ `\` ` 返回 `200` 说明**服务本身没问题**，就是防火墙/安全组的事。 3. 看服务状态：`sudo bash install.sh --status\`

### ❌ 客户端报「连接失败」

**99% 是地址写错了。** 检查：

- 末尾是不是**只有一个** `/v1`（`http://IP:18610//v1` ← 错，多了一个斜杠）
- 端口对不对（默认 `18610`，装的时候可能自动换过）
- 服务器安全组放行了没

### ❌ 我忘了 API Key

不用重装，直接查：

```bash
sudo bash install.sh --status
```

输出里有一段「**连接信息**」，网页地址、接口地址、API Key、面板链接全列出来。

### ❌ 重跑安装会不会把 Key 换掉？

**不会。** 脚本会沿用上次的 Key，并在输出里告诉你"沿用上次的密钥（客户端不用重配）"。

### ❌ 网页能开，但生成视频报错 / 一直转

多半是账号没导入或掉线了。打开账号池面板看数量：

```
http://你的服务器IP:18610/admin?key=你的Key
```

数量是 `0` → 回去重新导号；有账号但报错 → 重新导一次（账号会过期，脚本每 48 小时自动续期，但偶尔会失效）。

### ❌ 安装时报「端口已被占用」

```bash
sudo ss -lntp | grep 8090      # 看谁占了
```

要么停掉那个服务，要么换个端口：

```bash
sudo bash install.sh --api-port 19000 --web-port 9000
```

### ❌ 内存不够 / 容器被系统杀掉

无头浏览器吃内存。2G 内存的机器建议升到 4G，或者在云控制台加一点 swap。

---

## 八、进阶：绑域名 + 自动 HTTPS

如果你的域名已经解析到了这台服务器，装的时候**加一个参数**就自动配好 HTTPS：

```bash
sudo bash install.sh --domain video.你的域名.com
```

脚本会自动用 Caddy 起反代、申请 Let's Encrypt 免费证书，装完直接 `https://video.你的域名.com/` 访问。

> ⚠️ 前提：域名**必须**已解析到这台机器的公网 IP，且 **80 / 443 端口没被别的程序占用**。

---

## 九、全部参数一览

```
用法：sudo bash install.sh [选项]

常用：
  --yes, -y            全自动安装，所有问题用默认值
  --dry-run            只显示会做什么，不实际改动系统
  --status             看当前运行状态
  --upgrade            升级到最新版
  --uninstall          卸载
  --help, -h           显示帮助

进阶：
  --dir <路径>         安装到哪个目录（默认 /opt/mvw）
  --api-port <端口>    接口服务端口（默认自动挑，常用 18610）
  --web-port <端口>    网页端口（默认自动挑，常用 8090）
  --domain <域名>      给网页绑域名并自动配 HTTPS
  --no-domain          不要域名（默认就是不要）
  --no-deps            不自动装依赖，缺什么只告诉你
```

**几个实用例子：**

```bash
# 全自动，指定网页端口
sudo bash install.sh --yes --web-port 8090

# 装到自定义目录，用自定义端口
sudo bash install.sh --dir /data/video --api-port 19000 --web-port 9000

# 绑域名
sudo bash install.sh --domain video.example.com
```

---

## 十、它会不会和我机器上别的东西打架？

脚本做了三层保护，**不会**覆盖别人的东西：

| 保护            | 行为                                                      |
| ------------- | ------------------------------------------------------- |
| **目录**        | 目标目录不可写 → 提前报错，不会下载到一半才失败                               |
| **端口**        | 被别人的程序占用 → 报错并给出 ss -lntp 排查命令；被**自己上次的**容器占用 → 放行，原地重建 |
| **服务名 / 容器名** | 已存在同名但**不是本脚本装的** → 拒绝执行，提示换目录                          |

默认安装目录 `/opt/mvw`、容器名 `mvw`、服务名 `mvw-web.service`——**刻意选了不常见的名字**，就是为了降低撞名概率。

**同一台机器想装多份？可以。** 脚本会从安装目录自动派生容器名和服务名，两份互不干扰：

```bash
sudo bash install.sh --dir /opt/mvw-2 --api-port 18620 --web-port 8100
```

> 💡 **目录名是中文也没问题**（比如 `/opt/视频工作台`）。脚本会给 Docker 显式指定一个英文项目名，不会踩"项目名不能为空"那个坑。

---

## 十一、怎么卸载？

```bash
sudo bash install.sh --uninstall
```

默认行为：

| 东西                       | 卸载后          |
| ------------------------ | ------------ |
| 容器（muse-video）           | ✅ 删除         |
| 网页 systemd 服务            | ✅ 停止并删除      |
| **安装目录 /opt/mvw（含账号数据）** | **保留**（怕你误删） |

想**连数据一起删干净**，卸载后手动执行：

```bash
sudo rm -rf /opt/mvw
```

---

## 最后

这套东西不是"点一下就有"的消费级产品，它需要你有一台机器、有一个 muse.ai 账号、愿意花 10 分钟跟着走一遍。但它给你的是一套**完全归你控制**的视频生成接口——这一点，公开网站给不了。

如果你照着做卡在某一步，先翻第七节「遇到问题怎么办」，那里覆盖了绝大多数情况。

> 💡 **免责声明**：本工具只是部署脚本，视频生成能力来自 muse.ai 的账号。  
> 请遵守 muse.ai 的服务条款，不要滥用。

---

**项目地址：**

- 安装脚本：<[https://github.com/yys9253462-gif/muse-video-installer>](https://github.com/yys9253462-gif/muse-video-installer%3E?ref=isoziyuan.com)
- 程序本体：<[https://github.com/yys9253462-gif/muse2api>](https://github.com/yys9253462-gif/muse2api%3E?ref=isoziyuan.com)