前言


之前用的是deepin-wine,运行微信和QQ,可以说是修bug修的脑壳疼

参考地址
https://ugirc.blog.csdn.net/article/details/109487664
https://github.com/bestwu/docker-wechat
https://github.com/bestwu/docker-qq

能在 docker下使用简直不要太方便,还省内存,亲测一次成功


折腾


首先你得有docker,没有的话可以看我之前的笔记补一下

允许所有用户访问X11服务

  1. # 后续命令都需要在root权限下执行
  2. sudo su
  3. xhost +
  4. # 正确的返回值是
  5. access control disabled, clients can connect from any host


然后拉镜像 并启动

  1. # 拉取镜像
  2. docker pull bestwu/wechat
  3. # 等个2分钟
  4. # 启动
  5. # 注意!!! '把你的用户名' 替换成你的用户名
  6. docker run -d --name wechat\
  7. --device /dev/snd\
  8. --ipc=host\
  9. -v /tmp/.X11-unix:/tmp/.X11-unix\
  10. -v /home:/home\
  11. -v /home/你的用户名/WeChatFiles:/WeChatFiles\
  12. -e DISPLAY=unix$DISPLAY\
  13. -e XMODIFIERS=@im=ibus\
  14. -e QT_IM_MODULE=ibus\
  15. -e GTK_IM_MODULE=ibus\
  16. -e AUDIO_GID=`getent group audio | cut -d: -f3`\
  17. -e GID=`id -g`\
  18. -e UID=`id -u`\
  19. bestwu/wechat
  20. # 首次启动等个1~2分钟 出现扫码登录即可


常用命令

  1. docker start wechat
  2. docker stop wechat
  3. docker restart wechat


这里需要注意几点
1. 这里用的输入法是ibus,ibus是啥可以参考我上一篇笔记,如果你是fciux,把启动脚本里的ibus改fciux即可,否则引起无法输出中文问题
2. 保存文件,我这里在映射的部分加了-v /home:/home\,所以可以在home中看到当前计算机的home,再在桌面或者文档的位置选中文件夹,点加号,角可以加到常用位置
3. 如果点了右上角关闭按钮,只会关闭图形界面,程序还在后台执行,但目前我还是没找到再次启动图形界面的办法,只能重启docker容器


qq也是类似操作不赘述了一笔带过

  1. # 拉取镜像
  2. docker pull bestwu/qq
  3. # 启动
  4. # 注意!!! '把你的用户名' 替换成你的用户名
  5. docker run -d --name qq\
  6. --device /dev/snd\
  7. --ipc=host \
  8. -v /home:/home\
  9. -v /home/你的用户名/TencentFiles:/TencentFiles\
  10. -v /tmp/.X11-unix:/tmp/.X11-unix\
  11. -e XMODIFIERS=@im=ibus\
  12. -e QT_IM_MODULE=ibus\
  13. -e GTK_IM_MODULE=ibus\
  14. -e DISPLAY=unix$DISPLAY\
  15. -e AUDIO_GID=`getent group audio | cut -d: -f3`\
  16. -e VIDEO_GID=`getent group video | cut -d: -f3`\
  17. -e GID=`id -g`\
  18. -e UID=`id -u`\
  19. bestwu/qq:latest



桌面图标

关于装完后续如何启动图形界面问题
需要执行以下命令
干脆写成一个shell脚本

  1. #!/bin/bash
  2. xhost +
  3. docker stop wechat
  4. docker start wechat

然后桌面新建一个图标文件,权限给755
文件名 wechat.desktop

  1. [Desktop Entry]
  2. Name=Wechat
  3. Exec=sudo bash "/home/你的用户名/soft/wechat/run.sh"
  4. Terminal=true
  5. Type=Application
  6. Icon=/home/你的用户名/soft/wechat/wechat.png
  7. StartupWMClass=Wechat
  8. Comment=Wechat
  9. MimeType=x-scheme-handler/Wechat;
  10. Categories=Development;

由于 xhostdocker 需要 root权限 ,所以这里使用 sudo bash 执行脚本,每次双击图标需要输入一次密码


补充

  1. 用了一段时间,发现每次打开,左上角都有一个小窗口
  2. 每次关闭了微信的窗口以后,没地方再打开窗口,只能全部关了重来
    实际这两个问题是一回事,那个小窗口本来应该是托盘,只是需要插件才可以实现



安装工具
GNOME Tweaks

  1. # 启用 Universe 仓库
  2. sudo add-apt-repository universe
  3. # 安装 Gnome Tweak Tool
  4. sudo apt install gnome-tweak-tool
  5. # 启动 Gnome Tweak Tool
  6. gnome-tweaks



安装插件
TopIcons Plus
https://extensions.gnome.org/extension/1031/topicons/
https://github.com/phocean/TopIcons-plus



最后在 Gnome Tweak Tool - 插件 中 启用 TopIcons Plus
并在设置中选择 托盘水平对齐方式 - 右对齐
至此微信的图标就可以正常显示在桌面右上角了,功能和windows下一样
日常内存占用在500MB以内



END