前言
容器魔方开始加收益BUFF了(时间2022-9月30号之前)最大80%的BUFF
底层环境:pve (esxi也行 不过pve跑linux比较稳)
准备:先给centos7的虚拟机添加一个磁盘 容量自定 其他默认
处理磁盘
1.重启虚拟机登录ssh
2.使用命令 lsblk 可以查看磁盘的大小和挂载情况
3.也可以使用命令 lsblk -f 查看磁盘的格式(一般新加的磁盘格式为sdb)
3.磁盘分区
3.1 新建分区
1.在/root目录下创建(命令:mkdir wxydisk)wxydisk文件夹来挂载新磁盘,该目录和文件夹可以任意
2.新加的磁盘是在/dev/新盘名,可以cd /dev/目录下(ls)看到新磁盘
3.使用命令 fdisk /dev/磁盘名 进行分区,如: fdisk /dev/sdb
4.执行上述命令之后,提示输入m获取帮助,输入m回车
5.新加分区,总共有5步,每一步以回车结束
-
- 输入n添加新分区
- 输入p新建主分区
- 指定分区编号,输入1即可
- 指定起始扇区,默认即可,不推荐更改
- 指定结束扇区,代表分区大小,可以使用K,M,G指定分区大小,例如分配50G则输入50G即可
6.最后输入 w 确定分区生效
7.如果是删除分区,则fdisk /dev/sdb执行之后,输入d表示删除分区,然后输入w确认更改
8.通过lsblk和lsblk -f可以看到新建的分区已经生效,但是并没有格式化和挂载,此时还是不可以使用
3.2 格式分区
1.命令:mkfs -t 分区系统格式 磁盘分区
mkfs -t xfs /dev/sdb1(sdb1是sdb磁盘分区后得到的)
2.再次使用 lsblk -f 可以看到格式分区成功,但是还没有挂载点
3.3 挂载分区
此方式挂载只是暂时挂载,系统重启之后需要重新挂载
现在把sdb1挂载到之前创建的/root/wxydisk目录下
挂载分区使用 mount 命令:mount 分区 挂载目录,挂载之后可以通过lsblk -f查看是否挂载成功
mount /dev/sdb1 /root/wxydisk
lsblk -f 查看挂载
通过 df -h 命令查看是否真的成功
3.4 永久挂载新分区
1.上述步骤的挂载只是暂时挂载,系统重启之后需要重新挂载才行
2.如果每次使用都需要重新挂载则会很麻烦,所以我们可以永久挂载分区,开机自动挂载
3.永久生效需要将磁盘信息写入到 /etc/fstab文件 开机才能自动加载
4.写入新建的磁盘信息,需要我们配置5个信息,分别代表如下信息
执行 vi /etc/fstab 按a进入编辑 在最下面回车复制这段
/dev/sdb1 /root/sydisk/ xfs defaults 0 0
说明:
-
- 第1个需要挂载的分区,如/dev/sdb1
- 第2个分区挂载点,如挂载到/root/wxydisk下
- 第3个分区格式,和自己格式化分区时指定格式一致
- 第4个直接defaults即可,和系统保持一致
- ·第5个和系统保持一致,输入0即可
- 第6个和系统保持一致,输入0即可
5.输入完成后保存退出,然后重启虚拟机,查看是否自动加载,重启之后输入 lsblk -f查看是否成功自动加载
3.5 取消挂载分区
如果不想挂载此分区,使用命令:umount 取消挂载
umount /dev/sdb1
umount /root/wxydisk
注意使用umount命令取消挂载分区的时候不要在分区挂载目录内使用 或 磁盘没有被使用
否则将会出现:device is busy 提示
取消挂载分区之后可以挂载到另外的分区,可以挂载到需要任意目录下,但是不要挂载系统目录中
注意:请不要直接将硬盘挂载到/home、/root等系统原有目录下容导致出错!
直接挂载到系统目录会替换掉原有系统目录已经有的内容,原始挂载盘会被替代
如果挂载到了用户目录,会导致-bash问题,因为原始.bashrc文件找不到
如果不小心挂错到了上述目录,用umount取消挂载,重新挂载到自己需要的目录即可
安装docker
1.更新 yum 包
yum -y update
2.卸载旧版本如果之前安装过
yum remove <span class="token function">docker</span> docker-common docker-selinux docker-engine
3.安装软件包
安装需要的软件包,yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖
yum <span class="token function">install</span> -y yum-utils device-mapper-persistent-data lvm2
4.设置 yum 源
(中央仓库)
yum-config-manager --add-repo http://download.docker.com/linux/centos/docker-ce.repo
(阿里仓库)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
5.选择docker版本
yum list docker-ce --showduplicates <span class="token operator">|</span> <span class="token function">sort</span> -r
选择一个版本并安装:
yum install docker-ce-版本号
6.启动 Docker
systemctl start docker
###设置开机自启
systemctl enable docker
安装容器魔方
拉取镜像
docker pull onething1/wxedge
启动容器
docker run -d --name=wxy --restart=always --privileged --net=host --tmpfs /run --tmpfs /tmp -v /root/wxydisk:/storage:rw onething1/wxedge
地址:http://centos7IP:18888
补充
是不是发现明明安装正确 却死活打不开网页去激活
原因:你可能是防火墙没关
CentOS 7版本后防火墙默认使用的是firewalld,我们可通过运行以下命令来查看防火墙状态以及关闭防火墙。
1、查看CentOS 7防火墙状态
systemctl status firewalld.service
看到有绿色字样标注的“active(running)”,说明防火墙是开启状态。
2、关闭运行的防火墙
systemctl stop firewalld.service
关闭后,可查看防火墙状态,当显示disavtive(dead)的字样,说明CentOS 7防火墙已经关闭。
上面的命令只是临时关闭了CentOS 7防火墙,当重启操后,还是会再次启动。如果想要永久关闭防火墙则要禁用防火墙服务
3、禁用防火墙服务
systemctl disable firewalld.service
课外补充
觉的安装docker麻烦试试一键安装docker:
wget https://raw.githubusercontent.com/songwqs/docker/main/install.sh
chmod u+x install.sh
./install.sh
关于魔方2.4.1
由于新版的2.4.2 业务数限制了数量,可能有的限制在了2个业务,这里只能通过降到2.4.1添加多个业务后,在升级到2.4.2。安装的两个容器目录一样(但是只能同时运行一个容器不然会目录冲突)/mnt/sda1/wxedge1/containerd 目录自己修改
另外安装2.4.1的时候 备份好wxedge1目录下的 wxnode文件(重要)然后删除掉wxnode 文件再启动2.4.1
运行2.4.2的时候同理 删除wxnode文件 再还原之前备份的wxnode文件
docker pull songwqs1/onething2:2.4.1
docker run -d --name=wxedge2.4.1 --restart=always --privileged --net=host --tmpfs /run --tmpfs /tmp -e LISTEN_ADDR=":28888" -v /mnt/sda1/wxedge1:/storage:rw -v /mnt/sda1/wxedge1/containerd:/var/lib/containerd:rw songwqs1/onething2:2.4.1
最新情况
2.4.1官网已经失效不给下发业务 不会显示可添加业务了 现在只能通过多容器方案跑了
docker pull onething1/wxedge:latest
docker run -d --name=wxedge 1(每次添加都要改) --restart=always --privileged --net=host --tmpfs /run --tmpfs /tmp -e LISTEN_ADDR=":18888(每次添加端口都要改)" -v 磁盘路径(每次添加端口都要改):/storage:rw onething1/wxedge:latest