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高仿真环境简单演示视频

相关推荐
万博智云OneProCloud5 小时前
GPU 资源池化最佳实践:规划、调度、监控与运营的五步方法
kubernetes·算力调度·ai基础设施·gpu池化·agione·powerone
YoungStudyAI7 小时前
QA的下一个自动化阶段,可能不是再写更多脚本,而是设计测试Agent
运维·自动化
阿钱真强道8 小时前
22 嵌入式操作系统 | 串口命令行调试(socat / stty / printf / hexdump)
ubuntu·cmake·uci·ubus·libubox
分布式存储与RustFS8 小时前
纠删码到底吃掉了多少容量:EC:4、EC:8 的利用率与容错怎么算
运维·云原生·开源·对象存储·分布式存储·s3·性能基准
遇见小修修8 小时前
3步解决打印机0x00000709报错 ,广州深圳程序员可自行排查
运维·打印机·维修·打印机报错·打印机运维·打印机故障自查
无序的浪9 小时前
测试博客-基于微服务的在线判题系统
java·spring cloud·docker·微服务·测试·在线判题
Huangjin007_10 小时前
【Linux 系统篇(二十五)】文件(二) 系统文件I/O详解
linux·运维·服务器
微小冷11 小时前
Mermaid画甘特图
运维·markdown·甘特图·mermaid·时间图
念何架构之路11 小时前
zap日志SugaredLogger 剖析
云原生·golang
LBL122012 小时前
内网容器部署FTP日志监控服务
运维·服务器·容器