一、目标
centos7.6下制作Dockerfile,用Dockerfile生成镜像,并且让生成的镜像自动自行预定义脚本。(无坑版)
本例拿nginx镜像做测试,让脚本自动实时刷新nginx的默认主页/usr/share/nginx/html/index.html内容(显示容器的主机名和时间)
二、平台
[[email protected] ~]# uname -r
3.10.0-957.el7.x86_64
[[email protected] ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
Docker版本:Docker version 19.03.5, build 633a0ea
三、前言
1.准备一个docker仓库私服harbor,私服地址https://harbor.hiibm.com。关于harbor的HTTPS私服搭建,参见另一篇帖子《Centos7笔记之Docker私有仓库Harbor安装配置》,该帖子未公开,有需要的私信。
四、开始制作
1.新建个文件夹,用于存放Dockerfile和脚本
mkdir -p /root/dockerfile/xnginx
2.制作脚本(用于自动产生默认的nginx主页)
vim /root/dockerfile/xnginx/autoCreateHtml2Nginx.sh
chmod 777 /root/dockerfile/xnginx/autoCreateHtml2Nginx.sh
#!/usr/bin/env bash
hostName=`hostname`
nginx
while true
do
shijian=`date "+%Y-%m-%d_%H:%M:%S"`
cat > /usr/share/nginx/html/index.html <
Hello Kahn,${hostName}
Hostname: ${hostName}
Time: ${shijian}
Author: Kahn.Xiao