k8s学习-CKS真题-Dockerfile和deployment优化
题目
Task 分析和编辑给定的 Dockerfile /cks/docker/Dockerfile(基于 ubuntu:16.04 镜像), 并修复在文件中拥有的突出的安全/最佳实践问题的两个指令。
分析和编辑给定的清单文件 /cks/docker/deployment.yaml , 并修复在文件中拥有突出的安全/最佳实践问题的两个字段。
注意:请勿添加或删除配置设置;只需修改现有的配置设置让以上两个配置设置都不再有安全/最佳实践问题。 注意:如果您需要非特权用户来执行任何项目,请使用用户 ID 65535 的用户 nobody 。 只修改即可,不需要创建
环境搭建
/cks/docker/Dockerfile
FROM ubuntu 16.04 USER root RUN apt get install -y nginx=4.2 ENV ENV=testing CMD ["nginx -d"]
/cks/docker/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: lady_killer9_test
  labels:
    app: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx1
  template:
    metadata:
      labels:
        app: nginx2
    spec:
      containers:
      - name: nginx
        image: nginx:1.14.2
        ports:
        - containerPort: 80
        securityContext:
            {
          
   capabilities:{
          
   add:[NET_ADMIN],drop:[all]},privileged: True,readOnlyRootFilesystem: False,runAsUser: 65535} 
解题
Dockerfile
一般不使用root来运行容器,这里改为使用nobody 命令
vim /cks/docker/Dockerfile
deployment.yaml
标签改为一样的 安全上下文配置错误
- 
 privileged改为false readOnlyRootFilesystem改为true
 
命令
vim /cks/docker/deployment.yaml
参考
更多k8s相关内容,请看文章:
上一篇:
			            通过多线程提高代码的执行效率例子 
			          
			          下一篇:
			            PowerBI动态坐标轴及年季月切换 
			          
			        