打造一個紅旗(redflag)Linux的基礎鏡像(base image)


起因

由於工作原因,想找一個紅旗Linux的基礎鏡像(base image)。網上搜了一下,但沒有現成的。起初是想找對應的centos版本來代替,但又怕有些莫名其妙的問題。

官方文檔

不過搜索過程中,發現有人有類似的疑問,參見這個鏈接:

https://segmentfault.com/q/1010000005821637

里面提到了docker官方的文檔,教你如何構建自己的base image。官方文檔在此

https://docs.docker.com/develop/develop-images/baseimages/

里面大概有2種思路,一種是使用類似於 debootstrap 的工具,一種是自建從頭寫 dockerfile,base image為

from scratch

此處的scratch代表一個空鏡像。

由於不知道紅旗Linux做了哪些魔改,所以開始嘗試第一種方法:debootstrap工具。

但有個問題,debootstrap是debian系的,紅旗整體是紅帽系的…不過巧了,在搜debootstrap的時候,發現有人基於debootstrap開發了febootstrap。

febootstrap

安裝比較簡單,找到對應的包,就可以了。

febootstrap.rar

解壓后進入對應文件夾,使用如下命令安裝

rpm -ivh *rpm

使用步驟參考這篇文章

https://www.58jb.com/html/66.html

安裝步驟

步驟基本與上文一致,部分細節不一樣,各取所需~

由於並沒有找到紅旗Linux可用的rpm源,就只能使用本地光盤制作鏡像。

此處需要掛載iso文件,使用下列命令掛載即可

mount -o loop xxxx.iso  mount_dir_name
cd dir_name
python -m SimpleHTTPServer 80 (Python2)

建立本地源

cd /etc/yum.repos.d/
tar zcf yum.tar.gz .
rm -rf *.repo

添加本地源文件

cat >/etc/yum.repos.d/cdrom.repo <<-EOF  # 回車后輸入下列數據
[c6-media]
name=Redflag-Media
baseurl=file:///dir_name
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-Redflag-7-x86_64
EOF # 回車

選擇對應目錄,執行

cd workdir # 根據情況自己定
febootstrap -i bash -i wget -i yum -i man -i vim -i openssh-server -i openssh-clients -i tar -i gzip  redflag redflag-7.3-base http://127.0.0.1

上述命令會生成一個redflag-7.3-base文件夾,進入文件夾,拷貝所需文件,並打包鏡像

cd workdir
cp /etc/skel/.bash* redflag-7.3-base/root/
tar -c .|docker import - redflag-7.3:base  # 生成的鏡像名

查看鏡像

docker image ls  # 可以看到 redflag-7.3:base

測試

docker -it redflag-7.3:base bash  # 可以進入容器即為成功

至此完成~

其他

過程中遇到了掛載u盤的問題,ntfs u盤可以參考

https://my.oschina.net/u/4364192/blog/3326016

exfat u盤,參考

yum localinstall --nogpgcheck http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

yum localinstall http://download1.rpmfusion.org/free/el/rpmfusion-free-release-7.noarch.rpm

yum clean & yum makecache

yum install exfat-utils fuse-exfat

mount.exfat /dev/sdb1 /root/data/udisk/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM