> [!WARNING] > 此文档已过时,请查看[QChatGPT 容器化部署指南](docker_deployment.md) ## 操作步骤 ### 1.安装docker和docker compose [各种设备的安装Docker方法](https://yeasy.gitbook.io/docker_practice/install) [安装Compose方法](https://yeasy.gitbook.io/docker_practice/compose) > `Docker Desktop for Mac/Windows` 自带 `docker-compose` 二进制文件,安装 Docker 之后可以直接使用。 > > 可以选择很多下载方法,反正只要安装了就可以了 ### 2. 登录qq(下面所有步骤建议在项目文件夹下操作) #### 2.1 输入指令 ``` docker run -d -it --name mcl --network host -v ${PWD}/qq/plugins:/app/plugins -v ${PWD}/qq/config:/app/config -v ${PWD}/qq/data:/app/data -v ${PWD}/qq/bots:/app/bots --restart unless-stopped kagurazakanyaa/mcl:latest ``` 这里使用了[KagurazakaNyaa/mirai-console-loader-docker](https://github.com/KagurazakaNyaa/mirai-console-loader-docker)的镜像 #### 2.2 进入容器 ``` docker ps ``` 在输出中查看容器的ID,例如: ```sh CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES bce1e5568f46 kagurazakanyaa/mcl "./mcl -u" 10 minutes ago Up 10 minutes 0.0.0.0:8080->8080/tcp, :::8080->8080/tcp admiring_mendeleev ``` 查看`IMAGE`名为`kagurazakanyaa/mcl`的容器的`CONTAINER ID`,在这里是`bce1e5568f46`,于是使用以下命令将其切到前台: ``` docker attach bce1e5568f46 ``` 如需将其切到后台运行,请使用组合键`Ctrl+P+Q` #### 2.3 编写配置文件 - 在` /qq/config/net.mamoe.mirai-api-http` 文件夹中找到`setting.yml`,这是`mirai-api-http`的配置文件 - 将这个文件的内容修改为: ``` adapters: - ws debug: true enableVerify: true verifyKey: yirimirai singleMode: false cacheSize: 4096 adapterSettings: ws: host: localhost port: 8080 reservedSyncId: -1 ``` `verifyKey`要求与`bot`的`config.py`中的`verifyKey`相同 `port`: 8080要和2.4 config.py配置里面的端口号相同 #### 2.4 登录 #### 在mirai上登录QQ ``` login <机器人QQ号> <机器人QQ密码> ``` > 具体见[此教程](https://yiri-mirai.wybxc.cc/tutorials/01/configuration#4-登录-qq) #### 配置自动登录(可选) 当机器人账号登录成功以后,执行 ``` autologin add <机器人QQ号> <机器人密码> autologin setConfig <机器人QQ号> protocol ANDROID_PAD ``` > 出现`无法登录`报错时候[无法登录的临时处理方案](https://mirai.mamoe.net/topic/223/无法登录的临时处理方案) **完成后, `Ctrl+P+Q`退出(不会关掉容器,容器还会运行)** ### 3. 部署QChatGPT 配置好config.py,保存到当前目录下,运行下面的 ``` docker run -it -d --name QChatGPT --network host -v ${PWD}/config.py:/QChatGPT/config.py -v ${PWD}/banlist.py:/QChatGPT/banlist.py -v ${PWD}/sensitive.json:/QChatGPT/sensitive.json mikumifa/qchatgpt-docker ```