nonebot2/website/docs/guide/tutorial/creating-a-project.md
2021-12-27 15:29:34 +08:00

70 lines
1.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
sidebar_position: 0
description: 创建并运行项目
options:
menu:
weight: 20
category: guide
---
# 创建项目
可以使用 `nb-cli` 或者自行创建完整的项目目录:
```bash
nb create
```
## 目录结构
<!-- prettier-ignore-start -->
```bash
AweSome-Bot
├── "awesome_bot" # 或是 src
│ └── "plugins"
├── ".env" # 可选的
├── ".env.dev" # 可选的
├── ".env.prod" # 可选的
├── .gitignore
├── "bot.py"
├── docker-compose.yml
├── Dockerfile
├── "pyproject.toml"
└── README.md
```
<!-- prettier-ignore-end -->
- `awesome_bot/plugins``src/plugins`: 用于存放编写的 bot 插件
- `.env`, `.env.dev`, `.env.prod`: 各环境配置文件
- `bot.py`: bot 入口文件
- `pyproject.toml`: 项目插件配置文件
- `Dockerfile`, `docker-compose.yml`: Docker 镜像配置文件
## 启动 Bot
:::warning 提示
如果您使用如 `VSCode` / `PyCharm` 等 IDE 启动 nonebot请检查 IDE 当前工作空间目录是否与当前侧边栏打开目录一致。
> 注意:在二者不一致的环境下可能导致 nonebot 读取配置文件和插件等不符合预期
:::
1. 通过 `nb-cli`
```bash
nb run [--file=bot.py] [--app=app]
```
其中 `--file` 参数可以指定 bot 入口文件,默认为 `bot.py``--app` 参数可以指定 asgi server默认为 `app`
2. 直接通过 `python` 启动
```bash
python bot.py
```
:::tip 提示
如果在 bot 入口文件内定义了 asgi server `nb-cli` 将会为你启动**冷重载模式**(当文件发生变动时自动重启 NoneBot 实例)
:::