- 主题:用了一把lxc容器的overlayfs,省了不少空间
这么算吧,Gentoo的镜像,systemd版的228M,openrc版222M,musl版208M相差不算大
我树莓派是Gentoo,openrc+glibc,不到100M,其中大约有60M是python,17M是glibc,10多M是内核、initramfs和内核各种声卡的设备树,剩下还有10M多
这系统包含完整的glibc,bash,rsync,openssh,coreutils,大多数工具链,压缩软件。考虑到我用的-O3没用-Os或者-Oz,应该和alpine是一个数量级的
你说的debian占满多少G,openrc的alpine不到10M,这么大差距确实问题出在发行版
【 在 poocp 的大作中提到: 】
: 运行时为了支撑 systemd 必须安装的一整套依赖(glibc、libmount、libcap、libseccomp、dbus、kmod、util-linux …)
--
修改:cppbuilder FROM 1.202.10.*
FROM 1.202.11.*
所以我已经找到最佳解了啊,lxc的Alpine模板对我的需求就是,用了systemd的都比这个大,你们想反驳什么?
【 在 cppbuilder 的大作中提到: 】
: 这么算吧,Gentoo的镜像,systemd版的228M,openrc版222M,musl版208M相差不算大
: 我树莓派是Gentoo,openrc+glibc,不到100M,其中大约有60M是python
: 你说的debian占满多少G,openrc的alpine不到10M,这么大差距确实问题出在发行版
: ...................
--
FROM 171.221.52.*
看不懂就算了,挺好的
【 在 poocp 的大作中提到: 】
: 所以我已经找到最佳解了啊,lxc的Alpine模板对我的需求就是,用了systemd的都比这个大,你们想反驳什么?
--
FROM 1.202.10.*
看不懂的是你吧,我说的是可联网可运行程序的最小环境,你那些几百MB的环境给谁看?
我现在用的是8MB多点的,Alpine OpenRC的。
如果你非要说systemd的你也行,ok,我还可以给你放宽到10MB,行就行,不行就不行,看懂了吗?
【 在 cppbuilder 的大作中提到: 】
: 看不懂就算了,挺好的
:
--
FROM 171.221.52.*
那也不过七八十 MB 而已,而且多个镜像可以共享这部分开销
【 在 poocp 的大作中提到: 】
: 那么我来告诉你为什么做不到吧,systemd目前不支持移植到其他 C 库(如 musl 或 bionic)以替代 glibc 进行编译。也就是说systemd 不支持 glibc 之外的 C 库编译。
: 所以想做小很难。
:
--
FROM 114.251.196.*
我看了上下文,觉得看不懂的是你poocp
你是那种认准答案就不管思路的作风
那还讨论啥?
【 在 poocp 的大作中提到: 】
: 看不懂的是你吧,我说的是可联网可运行程序的最小环境,你那些几百MB的环境给谁看?
: 我现在用的是8MB多点的,Alpine OpenRC的。
: 如果你非要说systemd的你也行,ok,我还可以给你放宽到10MB,行就行,不行就不行,看懂了吗?
: ...................
--
FROM 139.227.19.*
既然方向是把空间占用做小,思路当然就不能走弯路。
【 在 JulyClyde 的大作中提到: 】
: 我看了上下文,觉得看不懂的是你poocp
: 你是那种认准答案就不管思路的作风
: 那还讨论啥?
--
FROM 171.221.52.*
刚才试了一下lxc的openwrt x86_64模板,14MB。
粗略把dnsmasq dropbear odhcpd mke2fs addpart等等这些用不到的程序删了,减小到了11MB。
网络正常,我需要的程序运行正常。如果肯花时间再删些配置文件和用不到的程序,减小到10MB以下不难。
OpenWrt的initrc是独家的procd,比起openrc也不差。
这种使用场景选systemd从方向上就错了,注定得不到小的模板。
--
FROM 171.221.52.*
问题是没必要啊,现在又不是1995年,8M,10M,还是8G,10G都一样。
我刚build一个docker,发现打包的时候我的一个rust写的crate要用到12G的峰值容量...
虽然它编译出来很小就是了...
【 在 poocp 的大作中提到: 】
: 既然方向是把空间占用做小,思路当然就不能走弯路。
:
--
修改:lvsoft FROM 116.233.45.*
FROM 116.233.45.*
有没有必要看具体需求吧。我用的编程字体是自己定制的,github上每个release发布后 ,我的定时脚本就会抓源码podman自动编译,峰值内存占用20G,占多少对我无所谓,反正都够用。
但这不影响我arm盒子上低速slc tf卡减小闪存占用来提高多个容器的启动速度吧。
你可以说换个rk3588盒子不就行了,但我就跑4个容器又不干别的,要不是树莓派2只有100M网络我用树莓派2都能凑合,能满足我需求为毛要升级。啥时候Linux LTS内核把RK3288的支持移除了我再换也来得及。
我顶楼帖子开篇就写了环境,脱离环境不谈的讨论都算跑题了吧。
【 在 lvsoft 的大作中提到: 】
: 问题是没必要啊,现在又不是1995年,8M,10M,还是8G,10G都一样。
: 我刚build一个docker,发现打包的时候我的一个rust写的crate要用到12G的峰值容量...
: 虽然它编译出来很小就是了...
--
修改:poocp FROM 171.221.52.*
FROM 171.221.52.*