Docker容器技术应用 实验指导书 任务9.2.4 通过YAML文件创建Pod.docx
任务9.2.4通过YAML文件创建Pod
(1)任务目标
掌握通过YAML文件创建Pod的方法
(2)任务内容
编写YAML文件
创建Pod
查看Pod信息
(3)完成任务所需的设备和软件
一台安装Windows10操作系统的计算机
VMwareWorkstation,Docker
远程管理工具MobaXterm
(4)任务实施步骤:
第一步:参照9.2.3中http.yaml文件,编写mynginx.yaml文件,操作命令及代码如下:
[root@master~]#vimmynginx.yaml
apiVersion:v1
kind:Pod
metadata:
labels:
app:mynginx
name:mynginx
spec:
containers:
-image:nginx:latest
imagePullPolicy:IfNotPresent
name:nginx
ports:
-name:nginx
protocol:TCP
containerPort:80
hostPort:30000
resources:{}
dnsPolicy:ClusterFirst
restartPolicy:Never
第二步:通过mynginx.yaml创建Pod,操作命令如下:
[root@master~]#kubectlapply-fmynginx.yaml
[root@master~]#kubectlgetpod
命令运行结果如图9-31所示。
图9-31通过mynginx.yaml创建Pod
第三步:查看名称为mynginx的Pod详细信息,操作命令如下:
[root@master~]#kubectldescribepodmynginx
命令运行结果如图9-32所示。
图9-32查看名称为mynginx的Pod详细信息
从图中可以看到,名称为mynginx的Pod中运行nginx镜像的容器IP地址为6,该容器运行在节点node2上。
第四步:登陆容器并访问nginx应用,操作命令如下:
[root@master~]#kubectlexec-itmynginx--bin/sh
#curl6:80
命令运行结果如图9-33所示。
图9-33登陆容器并访问nginx应用
第五步:在浏览器中通过地址2:30000访问nginx应用,结果如图9-34所示。
图9-34通过浏览器访问nginx应用
第六步:编写twocontainers.yaml文件,操作命令及代码如下:
[root@master~]#vimtwocontainers.yaml
apiVersion:v1
kind:Pod
metadata:
labels:
app:twocontainers
name:twocontainers
spec:
containers:
-image:nginx:latest
imagePullPolicy:IfNotPresent
name:nginx
ports:
-containerPort:80
-image:redis:latest
imagePullPolicy:IfNotPresent
name:redis
ports:
-containerPort:8000
dnsPolicy:ClusterFirst
restartPolicy:Never
第七步:通过twocontainers.yaml创建Pod,操作命令如下:
[root@master~]#kubectlapply-ftwocontainers.yaml
[root@master~]#kubectlgetpod
命令运行结果如图9-35所示。
图9-35通过twocontainer.yaml创建Pod
第八步:查看名称为twocontainers的Pod详细信息,操作命令如下:
[root@master~]#kubectldescribepodtwocontainers
命令运行结果如图9-36所示。
图9-36查看名称为twocontainer的Pod详细信息
可见,名称为twocontainers的Pod中的两个容器运行在node2节点上,端口分别为80和8000。