Skip to content

OtterBot Docker

Bluefissure edited this page Mar 10, 2023 · 9 revisions

GitHub Workflow Status Downloads Size

该镜像由 Linux 内核构建,无法在 Windows 云服务器上安装 Docker 运行,只能在 Windows 物理机中构建。

安装Docker

Linux

docker-ce

curl -sSL https://get.docker.com/ | sh 

如果不是root安装,安装过程可能要输入root密码

如果container.io的安装有问题,可以通过先sudo apt-get remove docker-ce,再sudo apt-get remove runc,再重试上述命令尝试解决

docker-compose

sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
docker-compose --version

Windows

docker-ce

https://docs.docker.com/docker-for-windows/

docker-compose

https://docs.docker.com/compose/install/

下载Compose配置并启动

wget https://raw.githubusercontent.com/Bluefissure/OtterBot/master/docker-compose.yml
docker-compose pull
docker-compose up

然后服务就启动了,可以通过IP:8000端口访问,如果需要更改端口请更改docker-compose.yml文件。

数据初始化

用以下命令进入 Docker :

docker exec -t -i otterbot-web /bin/bash

部分数据(比如 Boss 名称、天气、服务器之类)被导出到了db文件夹内,需要导入数据库文件,运行以下命令导入数据:

python manage.py loaddata db/*.json

通过以下代码创建超级管理员,按照提示输入用户名密码即可:

python manage.py createsuperuser

如果使用管理员登录网站出现 User has no QQ user 的问题,请前往 IP:8000/admin 界面登录,然后给管理员用户绑定一个QQ。

启动队列消费者

用以下命令进入 Docker :

docker exec -t -i otterbot-web /bin/bash

运行以下命令启动一个消费者线程:

nohup python /FFXIVBOT/ffxivbot/pika_rabbit.py 2>/dev/null &

如果要多个消息队列的消费者,多运行几次上面的代码即可。

之后 Ctrl+D 退出 Docker,并通过IP:8000端口访问即可。