#楼主# 2022-1-24

跳转到指定楼层
本帖最后由 大咖筛选官 于 2022-1-24 15:25 编辑

上篇讲解了如何用debian 10安装网心云docker版,这篇就帮助大家减少踩坑的烦恼*^__^*。


一、宿主机的选择

一、我自己的测试来看,从新手视角出发,debian 10是跑网心云docker版的不二选择。
原因如下:
1.debian 10图形化的安装界面,基本跟着教程走,没有不会入手的。
2.ubuntu也不是不行,有图形化的安装界面。但我们安装好后无需图形化的界面,debian 10可以节省系统占用资源
3.ubuntu服务器版是全英文不好操作介绍安装方法。



二、docker安装和配置
ubuntu在配置网心云docker上需要多一步创建dokcer的网络类型,比较麻烦。而debian 10较简单。
戳了解“debian 10安装网心云docker版”详细教程:



三、最小化的跑量宿主机
1,alpine是最小的linux之一,安装较方便,缺点少了图形化安装界面且教程较少。
2,openwrt可以吗?不行,我始终认为网络就干网络的活。我相信大多数人都是拿编译好的固件来跑的,且不先说稳定性问题,网络结构优化就够你喝一壶(#`-_ゝ-)。
(老司机经验之谈,openwrt下docker网络类型非常奇怪,不建议做为宿主机)



二、了解docker创建命令
例子:
docker run -d --name=wxedge --restart=always --privileged--net=host  --memory 800m--memory-swap 800m --tmpfs /run --tmpfs /tmp -v /mnt/sda1/wxedge_storage:/storage:rw -e REC=false onething1/wxedge

每个代码段的解析,不求理解,只求了解即可
docker run -d 调用docker程序创建网心云容器命令
--name=wxedge 容器的名字,可随意命名,比如启动多个网心容器时,可命名wxedge1,wxedge2
--restart=always 重启宿主机时自动启动该容器
--privileged 容器内的管理员权限拥有宿主机的管理员权限,必开
--net=host  网络模式,在网心云模式中可用host和macvlan,macvlan多开必需,host模式使用宿主机网络,例如宿主机的ip是192.168.1.223,那访问网心云后台为192.168.1.223:18888
--memory 800m 内存可使用最大限制,以m为单位,例如4096m为4GB内存大小,若机器的内存不足可使用该代码段分配内存限制
--memory-swap 800m 设置 内存+swap 的使用限额。我们在安装系统的时候已经建立了 swap 分区。swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间。
--tmpfs /run 无需了解,创建时必须有代码段
--tmpfs /tmp 无需了解,创建时必须有代码段
-v /data/wxedge_storage:/storage:rw 将硬盘空间大小映射容器中的/storage文件夹中
/data/wxedge_storage挂载硬盘路径,实际硬盘文件夹位置
-eREC=false 第一次安装设置为false时,不会启动默认任务,默认为true,仅第一次安装有效。
onething1/wxedge 指定下载的映像名,默认下载latset,即下载最新版,onething1/wxedge:2.2.19 可指定下载2.2.19版本



三、网络结构优化(下期进行详细讲解)

最优解:光猫改桥接,单纯做光电转换(此步可百度教程)
     路由器拨号,开upnp,路由器下接跑量设备

这种情况无论如何都可以得到全锥型(若不是,直接投诉运营商,说玩游戏,nat层不行)。
全锥型优化为映射公网型,需要咨询运营商是否能开启公网。



四、命令行正常创建例子,及升级步骤
                 
41.png

未下载网心云映像前提下,会自动下载映像并创建容器,无报错例子如上图


42.png

  已下载网心云映像前提下,会创建容器,无报错例子如上图


43.png
命令:docker ps(PS展示正在运行的容器)


44.png
命令:docker stop <CONTAINER ID>
命令:docker rm <CONTAINER ID>
(PS:正常停止并删除容器)

  
45.png
命令:docker images(PS:查看所有映像)

46.png

  命令:docker rmi<REPOSITORY>(PS:删除映像)


docker run -d --name=wxedge --restart=always --privileged --net=host  --tmpfs /run --tmpfs /tmp -v /volume1/docker/wxedge:/storage:rw -e REC=false  onething1/wxedge:2.2.19
重新下载最新映像并创建容器

47.png

  重新拉取新映像


五、问题排查


异常一:
51.jpg


报错提示:在异常上提示一串英文(见上图)
设备:多出现于arm64和arm架构的宿主机上
解决方法及步骤:等个10分钟左右,会自行重复启动,直到正常。这种情况大多都是网络问题,没有完全解决的方法,重启可能还会岀现



异常二:
521.png

报错提示:业务部署下载失败或者显示无法联网(见上图)
解决方法及步骤:
1.检查网关和dns地址是否正常联网
2.简单判断宿主机是否联网:ping www.baidu.com
522.jpg

523.png
  

异常三:
53.jpg

报错提示:挂载磁盘路径不可写(见上图)
解决方法及步骤:
1.--privileged 检查创建代码是否加上该代码段
2.-v /data/wxedge_storage:/storage:rw 检查挂载硬盘路径是否正确,权限是否正确,挂载硬盘路径最好是绝对路径
3.一般硬盘挂载路经为/mnt或/media,挂载路径为/dev一般是不正确的
4.使用df -h查看硬盘挂载地址和大小
5.如下图:那么该代码应改为-v /mnt/sdb1/wxedge_storage:/storage:rw
532.jpg



异常四:
541.jpg

报错提示:恶意删除激活码(见上图)
解决方法及步骤:
检查一下wxedge_storage/下文件wxnode是否齐全,迁移容器时经常出现的报错
542.png



异常五:
551.jpg
报错提示:无业务(见上图)
解决方法及步骤:
情况一:使用了-eREC=false 第一次安装设置为false时,不会启动默认任务,默认为true,仅第一次安装有效。这种正常,常用于已知你现有网络跑量好的业务,多开时无需再等待默认业务部署后再删除
情况二:正常跑流量,无业务,24小时在线无收益,需检查应用版本号:是否大于等于v2.2.19,照上方升级教程升级(升级教程见【四、命令行正常创建例子,及升级步骤】)
552.png




以上是最近遇上且较多的坑或问题,欢迎补充,也可以留言,我都会去看看如何解决 (●'◡'●)

本帖原创作者:“softfuttery"
转播转播 分享淘帖
回复

使用道具

  • TA的每日心情
    难过
    2022-3-10 14:42
  • 4

    主题

    12

    帖子

    32

    积分

    幼儿园

    Rank: 1

    积分
    32
    狗蛋哥哥 发表于 2022-1-24 16:54:59
    网络类型一直显示未知,年后看看吧, 感觉是bug.
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-9-16 10:18
  • 48

    主题

    988

    帖子

    341

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    341

    最佳新人活跃会员热心会员

    心悟灵空 发表于 2022-1-24 22:07:08
    为什么我一看代码!我脑袋疼
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2021-8-30 13:14
  • 10

    主题

    1014

    帖子

    609

    积分

    小学生

    Rank: 2

    积分
    609

    最佳新人

    ( ̄︶ ̄)↗  发表于 2022-1-25 11:49:01
    狗蛋哥哥 发表于 2022-1-24 16:54
    网络类型一直显示未知,年后看看吧, 感觉是bug.

    创建的网络类型是什么?还有宿主机
    回复

    使用道具 举报

    该用户从未签到

    0

    主题

    3

    帖子

    22

    积分

    幼儿园

    Rank: 1

    积分
    22
    人智农 发表于 2022-2-3 18:47:04
    狗蛋哥哥 发表于 2022-1-24 16:54
    网络类型一直显示未知,年后看看吧, 感觉是bug.

    直接docker的宿主系统改用群晖,esxi上虚拟化的Ubuntu/mint上docker我试了一直是跑量正常,但是nat未知 upnp未知,网络模式host和macvlan都没用,收益一般,自己另一台同一网络下黑裙上docker跑就没这个问题,后面我就直接在esxi上虚拟个黑裙专门跑就正常了。应该是网心云官方打包镜像的问题吧,目测用群晖打包的,你在群晖上跑应该没啥问题
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2023-9-16 10:18
  • 48

    主题

    988

    帖子

    341

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    341

    最佳新人活跃会员热心会员

    心悟灵空 发表于 2022-2-11 14:01:58
    这代码!我不懂!哎
    回复

    使用道具 举报

  • TA的每日心情
    擦汗
    2022-7-19 15:41
  • 58

    主题

    3212

    帖子

    1514

    积分

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    1514

    最佳新人活跃会员热心会员

    吧主vodobai 发表于 2022-2-13 12:52:56

    回复

    使用道具 举报