> ## Documentation Index
> Fetch the complete documentation index at: https://docs.lagerdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Install Wheel

> 在 Lager Box 上安装本地 Python wheel 文件

把本地的 Python wheel（`.whl`）上传并安装到 Lager Box 的 lager 容器中。当您想把本地构建的软件包推送到 Box 而不先发布到软件源时，请使用它。它适合对 Box 侧的库或驱动程序做迭代开发。

安装之前，同名软件包此前安装的任何版本都会先被卸载，因此每次重新构建时不必修改版本号。软件包名称按 wheel 规范从 wheel 文件名解析得到。

## 语法

```bash theme={null}
lager install-wheel [OPTIONS] WHEEL_PATH
```

## 参数

| 参数           | 说明                 |
| ------------ | ------------------ |
| `WHEEL_PATH` | 要安装的本地 `.whl` 文件路径 |

## 选项

| 选项          | 说明                               |
| ----------- | -------------------------------- |
| `--box BOX` | Lager Box 名称或 IP 地址（省略时使用默认 Box） |

***

## 用法

```bash theme={null}
# 在指定 Box 上安装本地构建的 wheel
lager install-wheel dist/mypackage-0.1.0-py3-none-any.whl --box my-lager-box

# 在默认 Box 上安装
lager install-wheel dist/mypackage-0.1.0-py3-none-any.whl
```

***

## 工作原理

1. **在本地校验**该文件：它必须存在、以 `.whl` 结尾、可读，并且不超过 Box 的上传大小限制。
2. **获取 Box 锁**，在整个安装过程中持有。因为安装会在 Box 容器内运行 `pip install`，该锁可以防止并发的 `lager python` 测试在 Python/导入状态上与它竞争。请参阅
   [Box 锁定](/source/zh/reference/cli/locking)。
3. **卸载**该软件包此前安装的任何版本（尽力而为）。
4. 用 `pip install --force-reinstall` **安装**上传的 wheel。

```
Installing mypackage-0.1.0-py3-none-any.whl on my-lager-box...
Uninstalled previous version of mypackage
Successfully installed mypackage
```

***

## 说明

* wheel 会被上传到 Box 并安装在 lager 容器内部，不会安装到您本地的计算机上。
* 文件必须带 `.whl` 扩展名，并符合 wheel 文件名格式（`name-version-...whl`）；软件包名称取自开头的那一段。
* 若要安装或更新 Box 代码本身（而不是某个 Python 包），请使用
  [`lager install`](/source/zh/reference/cli/install) 和
  [`lager update`](/source/zh/reference/cli/update)。

***

## 参见

* [Install](/source/zh/reference/cli/install) —— 把 Lager Box 代码安装到一台 Box 上
* [Update](/source/zh/reference/cli/update) —— 更新 Lager Box 代码
* [Box Config](/source/zh/reference/cli/box-config) —— 管理 Python 包（`box config pip`）和其他声明式 Box 配置
