K8S认证|CKS题库+答案| 7. Dockerfile 检测

目录

[7. Dockerfile 检测](#7. Dockerfile 检测)

[免费获取并激活 CKA_v1.31_模拟系统](#免费获取并激活 CKA_v1.31_模拟系统)

题目

开始操作:

1)、切换集群

[2)、修改 Dockerfile](#2)、修改 Dockerfile)

[3)、 修改 deployment.yaml](#3)、 修改 deployment.yaml)


7. Dockerfile 检测

免费获取并激活 CKA_v1.31_模拟系统

题目

您必须在以下Cluster/Node上完成此考题:

Cluster Master node Worker node

CKS00707 master node01

.

设置配置环境:

candidate@node01\]$ kubectl config use-context CKS00707 . Task . 分析和编辑给定的 Dockerfile /cks/docker/Dockerfile (基于 ubuntu:16.04 镜像), 并修复在文件中拥有的突出的安全/最佳实践问题的 **两个指令** 。 . 分析和编辑给定的清单文件 /cks/docker/deployment.yaml , 并修复在文件中拥有突出的安全/最佳实践问题的 **两个字段** 。 . 注意:请勿添加或删除配置设置;只需修改现有的配置设置让以上 **两个** 配置设置都不再有安全/最佳实践问题。 . 注意:如果您需要非特权用户来执行任何项目,请使用用户 ID 65535 的用户 nobody 。 . 只修改即可,不需要创建。

开始操作:

1)、切换集群

bash 复制代码
kubectl config use-context CKS00707

2)、修改 Dockerfile

bash 复制代码
vim /cks/docker/Dockerfile

指定稳定的镜像版本,一般lastest稳定性尚待验证

bash 复制代码
#修改基础镜像为题目要求的 ubuntu:16.04
FROM ubuntu:16.04

CKS模拟系统截图

将容器启动时的程序运行用户改成nobody低权限用户

bash 复制代码
#仅将 CMD 上面的 USER root 修改为 USER nobody,不需要改其他的 USER root。
USER nobody

CKS模拟系统截图

3)、修改 deployment.yaml

bash 复制代码
vim /cks/docker/deployment.yaml

更改labels

bash 复制代码
#emplate 里标签跟上面的内容不一致,所以需要将原先的 run: couchdb 修改为 app: couchdb
apiVersion: apps/v1
kind: Deployment
metadata:
  name: couchdb
  namespace: default
  labels:
    app: couchdb                                 #标签
    version: stable
spec:
  replicas: 1
  revisionHistoryLimit: 3
  selector:
    matchLabels:
      app: couchdb                               #标签
      version: stable
  template:
    metadata:
      labels:
        app: couchdb                             #标签,run: couchdb改为app: couchdb
        version: stable
    spec:
      containers:
      - name: couchdb

CKS模拟系统截图

更改Pod安全标准设置

bash 复制代码
#确保 'privileged': 为 False 
#确保'readonlyRootFilesystem': 为 True
#确保'runAsUser': 为 65535
...
 volumeMounts:
          - name: database-storage
            mountPath: /var/lib/database
        securityContext:
          {'capabilities': {'add': ['NET_BIND_SERVICE'], 'drop': ['all']}, 'privileged': False, 'readOnlyRootFilesystem': True, 'runAsUser': 65535}
        resources:
...

CKS模拟系统截图


CKA高仿真环境简单演示视频

相关推荐
半梦半醒*4 分钟前
Linux网络管理
linux·运维·网络·centos·运维开发
破刺不会编程13 分钟前
linux线程概念和控制
linux·运维·服务器·开发语言·c++
翟天保Steven1 小时前
Ubuntu-安装Epics教程
linux·ubuntu·epics
Nightwish51 小时前
Linux随记(二十一)
linux·运维·服务器
终端行者2 小时前
k8s之Ingress服务接入控制器
云原生·容器·kubernetes
IT成长日记3 小时前
【自动化运维神器Ansible】Ansible常用模块之File模块详解
运维·自动化·ansible·file·常用模块
獭.獭.3 小时前
Linux -- 文件【上】
linux·运维·服务器·进程·pcb
不会敲代码的XW4 小时前
高可用集群KEEPALIVED的详细部署
运维·云原生
老实巴交的麻匪4 小时前
提问的智慧,用最少的时间获得最有效的帮助
运维·团队管理
小裕哥略帅4 小时前
架构师--基于常见组件的微服务场景实战
微服务·云原生·架构