8

手把手教你在Ubuntu 20.04上通过docker安装微信和QQ

 2 years ago
source link: https://weisenhui.top/posts/15040.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

Ubuntu上的微信和QQ一直很难装,我之前尝试了很多方法(有些是基于网页版登录微信的,有些是用wine的),但我试了都不太行,坑点很多,搞不好就把系统搞崩了。今天发现用docker安装微信和QQ非常简单,所以想分享给目前正在为在Ubuntu上安装微信和qq发愁的小伙伴们!

准备工作:你需要在Ubuntu上装个docker,这个百度或者Google就行了。对于常用服务器的人来说,会用docker应该是一项必备的技能了吧。

一、Ubuntu上安装微信和qq的具体方法

主要用的是以下两个GitHub项目

首先要允许所有用户访问X11服务,运行命令:

xhost +

下载微信镜像

shell
docker pull bestwu/wechat

运行微信

shell
docker run -d --name wechat --device /dev/snd --ipc=host \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-v $HOME/WeChatFiles:/WeChatFiles \
-e DISPLAY=unix$DISPLAY \
-e XMODIFIERS=@im=ibus \
-e QT_IM_MODULE=ibus \
-e GTK_IM_MODULE=ibus \
-e AUDIO_GID=`getent group audio | cut -d: -f3` \
-e GID=`id -g` \
-e UID=`id -u` \
bestwu/wechat

运行这个wechat容器后,会跳出登录界面,扫描登录就行了

注:上面的多行代码也可以写到一个 wechat.sh 脚本,以便下次直接使用。

下载qq镜像

shell
docker pull bestwu/qq

运行qq

docker run -d --name qq \
--device /dev/snd --ipc=host \
-v $HOME/TencentFiles:/TencentFiles \
-v /tmp/.X11-unix:/tmp/.X11-unix \
-e XMODIFIERS=@im=ibus \
-e QT_IM_MODULE=ibus \
-e GTK_IM_MODULE=ibus \
-e DISPLAY=unix$DISPLAY \
-e AUDIO_GID=`getent group audio | cut -d: -f3` \
-e VIDEO_GID=`getent group video | cut -d: -f3` \
-e GID=`id -g` \
-e UID=`id -u` \
bestwu/qq:latest

同样的运行这个qq容器后,会跳出登录界面,登录就行了

二、可能出现的问题

2.1 闪退问题

可能是因为你docker run的时候忘记加上 –ipc=host 了,官方给的运行代码是没有这个参数的,所以会出现闪退的情况,我也是被坑了很久。

我后来是看了这个issues才解决这个问题的。

2.2 微信无法输入中文问题

我看到有些人抱怨无法输入中文,这个其实是可以配置的,如果你ubuntu用的是ibus输入法,则直接用我上面的运行代码即可,如果是fcitx输入法,则把docker run时的代码里的ibus全部改成fcitx就行了

2.3 保存聊天文件的问题

聊天文件实际上是保存在wechat容器中用户文件夹中,但是我们在docker run的时候已经把路径挂载出来了。所以你可以在 WeChatFiles 里面找到这个文件。不过我更推荐你另存为到指定目录,如在挂载目录WechatFiles中创建一个files文件夹,专门用来保存文件。

2.4 如何重新打开微信或qq

docker stop wechat

docker start wechat
docker stop qq

docker start qq

最后一点建议:

你的wechat和qq容器中有了你的微信和qq的数据,所以不要随便打包成镜像,然后分享给别人。

另外为了防止更新镜像后会出错,我把当前版本的镜像备份到了我自己的dockerhub中,以防万一


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK