IT入门必备 篇三十九:最小系统环境Alipine linux-内存占用只有3.7M,微服务的福音。
引言
在当前的数字化浪潮中,特价VPS(虚拟专用服务器)已成为众多用户追求高性价比的首选。尤其是那些采用Llxc、Openvz等共享技术的64M~128M服务器,更是受到了节点用户的青睐(年付便宜)。然而,这些服务器往往预装了ubuntu或centos等操作系统,即便经过精简,系统开机仍会占用46M以上的内存。为了解决这个问题,本文将向您展示如何通过DD脚本重新为这些节点用户安装系统,并引入docker技术,为您的服务器带来前所未有的自由度和灵活性。
本文将重点介绍OsMutation——一款功能强大的一键重装系统脚本。它支持OpenVZ和LXC虚拟化技术,并兼容Debian、CentOS、Alpine等多种操作系统之间的转换。但请注意,本文的内容主要适用于LXC(包括Openvz7等虚拟化技术),并不适用于Openvz6、KVM和Xen。
在继续之前,请务必牢记:数据无价,更换系统将会清除所有数据。因此,强烈建议您在操作前进行数据备份。
备注:数据无价,更换系统会抹除数据,请自行备份。
项目开源地址:https://github.com/LloydAsp/OsMutation
一、通过DD脚本安装alpin
1、通过SSH连接到您的服务器,并执行以下命令:
wget -qO OsMutation.sh https://raw.githubusercontent.com/LloydAsp/OsMutation/main/OsMutation.sh && chmod u+x OsMutation.sh && ./OsMutation.sh
或者
curl -so OsMutation.sh https://raw.githubusercontent.com/LloydAsp/OsMutation/main/OsMutation.sh && chmod u+x OsMutation.sh && ./OsMutation.sh
推荐使用alpine ,装完后比较小巧,内存不足4M
更换完就妥妥的了,是不是很简单(有些需要root重启,密码不变)
如下图,系统占用内存只有3.7M
2、为什么这么小?
答案很简单,就是这个系统啥都没有,系统采用最小化原则,省略了许多传统linux发行版中默认的软件包和工具,比如常用的没有apt(或yum)和systemd,而是使用代替工具busbox(busybox,包含300多个工具集)来处理基本任务,并且删除了一些不影响系统运行的补助资源文件,只用musl代替glibc,(不依赖C程序编译就行)。所以大多数情况下,都是用于Docker的基础镜像。(alpine镜像最小能到4M),如你要安装任何东西,都要装那些臃肿的依赖。这个时候有些基础环境反而不如debian或者ubuntu。总之是仁者见人,智者倒地不起。
备注:冷知识点,JAVA、PHP是依赖glibc,因此如果拉Docker基础环境,一般是alpine-glibc
二、安装docker
在Alpine系统上部署Docker非常简单,默认包含docker源,所以更新一下即可。
1、执行更新并且安装
apk update && apk add docker
2、启动docker
service docker start
3、设置开机启动
rc-update add docker boot
补充:docker -v 查看docker版本。
以下是系统启动docker后内存占用情况。可以看到,系统内存在36M左右。
总结:
综上所述,通过OsMutation和Alpine Linux的结合,可以在一些特价VPS上实现一个既高效又轻量级的基础环境,为后续的Docker容器部署和管理提供了便利。其实原理就是通过相关顺序(文件夹的依赖关系)的替换容器里的文件(系统)实现,说白了就是复制如alpineLinux文件到你这个系统里然后重启。
有兴趣的同学可以看下:
Converts OpenVZ VPS to Alpine Linux
https://gist.github.com/trimsj/c1fefd650b5f49ceb8f3efc1b6a1404d
同时,我们也需要注意在使用Alpine时可能遇到的依赖问题,并做好相应的准备工作。
补充:如果环境在32M(某某祖传机),可以alpine+caddy+sqlie 实现简单的web服务搭建个博客什么的还是可以的。
Linux小环境平替软件知识拓展:
nginx=caddy # Caddy代替Nginx的一个正反代理软件,占用内存极小;
Mysql=sqlite #Sqlite代替Mysql的一个轻量级sql软件,小型关系行数据库;
我是你光哥呀
校验提示文案
哈利伯伯
校验提示文案
_破军_
校验提示文案
XSBing
校验提示文案
值友4315536583
校验提示文案
邪恶机械兽v2
校验提示文案
absolute_
校验提示文案
Reneiw
校验提示文案
Reneiw
校验提示文案
值友4315536583
校验提示文案
XSBing
校验提示文案
absolute_
校验提示文案
_破军_
校验提示文案
哈利伯伯
校验提示文案
邪恶机械兽v2
校验提示文案
我是你光哥呀
校验提示文案