这是本步骤的定义:
{
"title": "配置容器服务",
"program":"scripts/init.sh",
"text": "scenario/ep5/1.md",
"check":"check/check.sh"
}
本步骤中使用到了program与check字段,这两个字段分别引用了一个在本步骤开始前执行,以及结束时用于检查当前步骤是否完成的shell脚本,下面将以此为实例,介绍这两个字段的用途。
date +gitcourse服务器端脚本执行于%Y年%m月%d日%H:%M -d "+8 hour" >>temp
这是scripts/init.sh的具体内容,它的作用是在本步骤开始前,将当前的时间打印到*/temp*文件中,我们将在下一步中通过容器内部服务访问到此文件的内容
这是/etc/nginx/nginx.conf的内容
events {
worker_connections 1024;
}
http {
server {
default_type 'text/html';
charset utf-8;
listen 8888;
location / {
root /;
index index.html;
}
}
}
此实验已经预装了nginx服务,并在配置文件中指定了8888端口作为对外服务的入口
并且在根目录下放置了一个index.html文件,当本步骤开启后,您将可以通过nginx服务访问到index.html以及由init.sh创建的temp文件
但是在此之前,请完成nginx服务的开启:
service nginx start
否则在下一步将无法访问由容器提供的服务
为了确保学员完成必要的前置任务,您可以通过check字段指定一个检查脚本
这是当前步骤的check/check.sh的内容:
if ps -ef|grep "nginx"|egrep -v grep >/dev/null
then
echo "1"
fi
当且仅当容器中已运行nginx服务时,才会允许进入下一步。当您在编写检查脚本时,需要注意以下几点: