@
IchinoseChiya #144
>为什么 “在 nas/软路由 上用 docker 玩与其初始职能无关的应用” 为了社区主流
我的回复已经解释了这点,那就是 docker 这种方式是更先进的方法,所以“市场”( NAS 社区)选择了这个方法。
我之所以举其他例子(比如说不可变系统)也是想说明这点。
本质上,它们都实现了以下几个特性:
1. 底层系统和应用相互隔离,应用和应用之间相互隔离。它们各自更新不会相互影响。
2. 基于镜像的管理方式,因此更新、备份、回滚等等都变得十分方便。
3. 不对底层系统进行修改,系统保持和原厂出厂设置一致,因此不会出现“works on my machine”的问题,并且系统更加稳定。
无论是手机系统,还是不可变操作系统,都是上面提到的特性的一种实现。
虽然它们底层实现的方式各自不一样,无论是通过 selinux 实现,还是说通过 capability 和 namespace 实现。
在 NAS 上使用 docker 也是,避免使用包管理器或者说编译安装对底层系统进行修改,相互隔离以及基于镜像的管理方式。
实际上也可以观察到越来越多的发行版开始采用不可变系统的方式,并且手机操作系统比桌面系统稳定多了。
NAS+docker 这种方式就是更稳定更先进的办法,所以“市场”( NAS 社区)成为了社区主流。