3.2. 脚本
3.2.1. 创建测试镜像根文件系统脚本
# cocker_install_test.sh
注意:应与cocker
指令-a install_test
配合使用。
3.2.2. 创建操作系统基础镜像脚本
注意:必须可正常使用yum为前提。
注意:如需增删软件可修改supermin5 -v --prepare
后的软件列表。
# cocker_create_image_rhel-7.4-x86_64.sh
...
# ls -l calvin=rhel-7.4-x86_64:1.0.0.cockerimage
-rw-r--r-- 1 root root 91781857 Nov 25 09:03 calvin=rhel-7.4-x86_64:1.0.0.cockerimage
执行后输入名字和版本号,自动生成可导入的镜像打包文件,文件名格式为(作者)=(rhel-7.4-x86_64):(版本号).cockerimage
# cocker -a import --image-file calvin=rhel-7.4-x86_64:1.0.0.cockerimage
OK
# cocker -s images
image_id version modify_datetime size
--------------------------------------------------------------------
calvin=rhel-7.4-x86_64 1.0.0 2018-11-25T09:03:48 228 MB
3.2.3. 创建sshd镜像脚本
此为创建sshd镜像层镜像打包文件。
# cocker_create_image_rhel-7.4-sshd-x86_64.sh
注意:后面章节通过交互式构建可达到更小更干净的镜像。
3.2.4. 创建gcc镜像脚本
此为创建gcc镜像层镜像打包文件。
# cocker_create_image_rhel-7.4-gcc-x86_64.sh
注意:后面章节通过交互式构建可达到更小更干净的镜像。
3.2.5. 设置容器根目录环境变量
# . cocker_container_root.sh test
$ echo $COCKER_CONTAINER_ROOT
/var/cocker/containers/test/merged
# ls -l $COCKER_CONTAINER_ROOT
total 20
drwxr-xr-x. 2 root root 4096 Nov 22 08:26 bin
-rwxr-xr-x. 1 root root 2634 Nov 22 08:43 cocker.log
-rwxr-xr-x. 1 root root 4848 Nov 22 08:46 cockerinit.log
drwxr-xr-x. 1 root root 25 Nov 22 08:43 dev
drwxr-xr-x. 1 root root 6 Nov 22 08:26 etc
drwxr-xr-x. 2 root root 6 Nov 22 08:26 lib
drwxr-xr-x. 2 root root 4096 Nov 22 08:26 lib64
drwxr-xr-x. 3 root root 19 Nov 22 08:26 mnt
dr-xr-xr-x. 197 root root 0 Nov 22 08:43 proc
drwxr-xr-x. 1 root root 42 Nov 22 08:46 root
drwxr-xr-x. 2 root root 61 Nov 22 08:26 sbin
drwxr-xr-x. 2 root root 6 Nov 22 08:26 tmp
drwxr-xr-x. 3 root root 19 Nov 22 08:26 usr
drwxr-xr-x. 2 root root 6 Nov 22 08:26 var
注意:此脚本调用了指令-s container_root
。
注意:外露容器根目录可能不太合适。