欢迎光临散文网 会员登陆 & 注册

CentOS部署Docker环境,安装酷Q on Docker

2019-12-27 21:27 作者:BluesDawn  | 我要投稿

酷Q是一款大家熟知的QQ机器人,由于本体是基于windows系统研发的,所以Linux/MacOS用户不能直接运行。好在官方发布了Docker镜像, 并且也基于wine技术,因此我们可以利用Docker和wine来运行酷Q。

酷Q on Docker 基于的是 Docker 和 wine 技术 ,由于wine相对于windows仍然有差距,因此可能会出现部分应用不兼容的情况。

准备工作

CentOS 7、宝塔面板(可选)

部署Docker环境

有两种方法

利用宝塔面板一键安装

宝塔面板可直接在应用商店中安装


通过yum安装

安装所需的软件包,yum-util 提供yum-config-manager功能,device mapper 则需要 device-mapper-persistent-data 和 lvm2

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

设置yum稳定源

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

安装最新版Docker和容器

sudo yum install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker # 启动docker

sudo systemctl enable docker # 加入开机启动

docker version # 验证版本,是否安装成功

出现client和service即表示已安装和启动成功


下载酷Q镜像并运行

安装完Docker后,在命令行键入以下命令下载 酷Q on Docker 镜像,然后等待下载完毕。

docker pull coolq/wine-coolq

下载完毕后, 我们在任意目录创建一个空文件夹,用于存放酷Q数据

mkdir /coolq-data # 任意目录均可

运行 酷Q on Docker 镜像

sudo docker run --name=coolq -d -p 9000:9000 -v /coolq-data:/home/user/coolq -e VNC_PASSWD=12345678 -e COOLQ_ACCOUNT=100000000 coolq/wine-coolq

# -p 将内部运行端口9000映射到外部的9000,可修改。

# -v 将内部酷Q及数据文件夹/coolq-data映射到外部的/home/user/coolq文件夹,可修改。

# VNC_PASSWD为VNC远程访问密码,请自行设置,不能超过8个字符。

# COOLQ_ACCOUNT为要登录酷Q的机器人帐号。

注意事项

如果你用的是阿里云的主机,不要忘记在防火墙放行你映射到外部的端口。
如果还装有宝塔面板的话,也请同时放行端口。
未安装宝塔面板的CentOS7请在命令行键入如下代码

firewall-cmd --zone=public --add-port=9000/tcp --permanent

firewall-cmd --reload

# 其中9000为映射到外部的端口,可修改。

阿里云防火墙放行端口
宝塔面板放行端口


在浏览器中访问 http://你的服务器IP:你映射到外部的端口,即可进入NoVNC登录页面。输入VNC密码,即可看到酷Q的登录界面。

VNC连接页面
酷Q界面

其他

启动/停止服务

docker start coolq

docker stop coolq

查看运行状况

docker logs coolq

插件目录(CentOS为此目录,其他系统可能会有差异)

此截图为Xfce桌面

报错排除

第一类

/usr/bin/docker-current: Error response from daemon: oci runtime error: container_linux.go:235: starting container process caused "process_linux.go:258: applying cgroup configuration for process caused \"Cannot set property TasksAccounting, or unknown property.\"".

查看你当前的内核版本

uname -r

确保yum包更新到最新

sudo yum update

再次启动docker就会发现报错被解决了。

systemctl restart docker

第二类

using default tag: latest Trying to pull repository docker.io/coolq/wine-coolq ...

latest: Pulling from docker.io/coolq/wine-coolq

Digest: sha256:ebd69fe21650aea4083bc1e4067b0a7fa89c4e28ea9ab7c3663cac296445e8b0

Status: Image is up to date for docker.io/coolq/wine-coolq:latest

你已经下载过 酷Q on Docker 镜像并且已经是最新的了,无需再次下载。

第三类

/usr/bin/docker-current: Error response from daemon: Conflict. The container name "/coolq" is already in use by container 51e28beb21672e119b9c817ef5028c1fadf7222ac0c6527f3eb7c8ca9bdc5233. You have to remove (or rename) that container to be able to reuse that name.. See '/usr/bin/docker-current run --help'.

容器名已经存在,如果不需要请删除。

docker ps # 查看已运行的容器

docker ps -a # 查看已退出的容器

docker rm 该容器ID或名称

如果想重新运行

docker restart 容器名

第四类

wine组件不完整,通过Winetricks 安装 msscript 及 winhttp 组件即可解决(容器内)

wget https://raw.githubusercontent.com/Winetricks/winetricks/master/src/winetricks

chmod +x winetricks

sh winetricks msscript winhttp


CentOS部署Docker环境,安装酷Q on Docker的评论 (共 条)

分享到微博请遵守国家法律