译者:BetaLe
序言
FreeBSD是两个杰出的控制系统,jail 是共享资源控制计算资源的两个应用软件包罐子,从 FreeBSD 4.X 早已开始就需用了,产业发展到13.2早已是十分成形的罐子了,在便携性、操控性、可靠性和可靠性各方面稳步进一步增强。以后采用过CBSD(bsdstore),想用以精简FrreBSD控制系统的jail管理工作,即使CBSD包涵了太多用途,有应用软件包和应用软件产业机能,对我而言采用过分繁杂,欧树就装载了。
能看见CBSD中文网站上列出的Jail管理工作辅助工具天数线,现阶段就剩AppJail、Bastillebsd、CBSD、Mkjail五个辅助工具还在合作开发了。
在试玩了Bastillebsd后,辨认出用以管理工作Jail比较简单,即使Bastillebsd是以罐子观念合作开发的,因此它指示采用方式基本上和docker的指示相差无几,上面来详尽采用Bastillebsd来管理工作Jail。
采用进阶
具体而言是加装Bastillebsd,就像加装通常软件那样:
pkg install bastille
加装顺利完成后,具体而言要浏览现阶段控制系统版罐子的底包,多于先浏览底包就可以建立Jail罐子,比如用户端采用的是FreeBSD 13.1-RELEASE,就先浏览:
bastille bootstrap 13.1-RELEASE
请冷静等候浏览顺利完成,也能把Update源修正成亚洲地区源大力推进浏览速度。
浏览顺利完成底包后就能建立虚拟环境的罐子了,上面指示“freshrss”为你要建立的罐子名称,后面13.1-RELEASE就是你刚刚浏览的底包版后面跟着手工设置的ip地址,即使默认建立指示是桥接网络,因此罐子和用户端是同一网段的ip,如果用户端有多个网口也能指定接口名称,后面接口为可选参数。
bastille create freshrss 13.1-RELEASE 192.168.1.8 [interface]
在建立成功后,采用bastille start freshrss启动罐子,bastille stop freshrss
停止罐子。
罐子启动后,采用bastille console freshrss指示就能进入虚拟罐子中了,只要进入罐子里面就能按照平常加装配置控制系统那样了。除了升级控制系统和应用软件外,就和正常采用FreeBSD控制系统那样。
即使虚拟罐子防修正的机制,升级控制系统和罐子里面的应用软件需要在用户端环境采用bastille指示来操作。
具体而言是打补丁与更新,与用户端freebsd-update fetch等价指示就是:bastille update 13.1-RELEASE
顺利完成这个指示后将会升级所有版为13.1-RELEASE罐子到最新的-p版,比如13.1-RELEASE-p7。
当有比13.1-RELEASE更加新的版发布后我们要先将用户端的控制系统按照FreeBSD手册“执行主要和次要版升级”(bsdcn)升级到13.2-RELEASE,然后就可以升级罐子里面的控制系统。
在顺利完成了用户端控制系统的升级,我们需要采用指示:bastille upgrade 13.1-RELEASE 13.2-RELEASE来将13.1的罐子全部升级到13.2。升级顺利完成后要把罐子里面应用软件全部升级,采用指示:bastille pkg ALL upgrade
注意:当你采用bastille upgrade 13.1-RELEASE 13.2-RELEASE来升级顺利完成你的罐子后,千万不能再采用bastille update 13.1-RELEASE了,这样会把罐子的13.2控制系统破环掉。就我用过的方式就是用指示bastille bootstrap 13.2-RELEASE浏览顺利完成最新的底包后,停用罐子,采用bastille edit freshrss fstab指示编辑罐子里面的fstab文件,把其中的/usr/local/bastille/releases/13.1-RELEASE…修正成/usr/local/bastille/releases/13.2-RELEASE…
然后就能采用bastille update 13.2-RELEASE来打补丁与更新了。
控制系统自启动bastille
在/etc/rc.conf文件添加两行就行了,bastille_list后面是罐子名称。
bastille_enable=”YES”
bastille_list=”freshrss”类似docker机能
为什么说采用Bastillebsd像docker那样,即使Bastillebsd的导出导入机能十分像dockers部署那样,把应用软件运行环境打包导出就能在其他控制系统导入了,完全不用重新再配置应用软件运行环境,能说完全复制了应用软件原来运行环境和数据。
导出指示:bastille export –txz freshrss
导入罐子指示(后面为打包文件路径):bastille import /path/to/archive.file
具体更多指示的采用方式请参考bastille官方文档。
如果需要应用软件包和应用软件产业机能,能考虑采用机能更强大的CBSD。
后记
FreeBSD Jail本身就是两个控制系统级非常强大罐子环境,只是采用了Bastillebsd来更方便去操作和管理工作Jail。如果官方能运营两个像Docker的镜像社区,方便采用者浏览导入其他人分享的打包程序,我相信对普及FreeBSD控制系统是一大好事。
自从最早的m0n0wall(居于FreeBSD 6.4合作开发)路由控制系统,中间到openwrt,再到2020年早已开始采用居于FreeBSD合作开发的opnsense路由控制系统。家里的nanopi neo2、x86主机也一直采用FreeBSD控制系统,控制系统版也一直从12.X平滑升级到现在的13.2,依然稳定地运行着。
阅读更多应用软件应用精彩内容,可前往什么值得买查看