deployment.yaml 文件解读

 

复制代码
apiVersion: apps/v1
kind: Deployment
  • apiVersion: 资源的版本,这里使用的是 apps/v1,表示这是一个 Deployment 的最新版本。
  • kind: 资源类型,这里是 Deployment,表示这是一个 Deployment 资源。
metadata:
  name:  project_name-project_env
name: Deployment 的名字,通常用来标识这个 Deployment 实例。
  namespace: baidu-project_env
namespace: 指定 Deployment 所在的命名空间,这里是 baidu-project_env
  labels:
    app: project_name-project_env
labels: 用于标识 Deployment 的键值对。标签可以帮助我们管理和选择特定的资源。
spec:
  replicas: 1
replicas: 指定要运行的 Pod 副本数量,这里是 1 个
  selector:
    matchLabels:
      app: project_name-project_env
selector: 指定如何选择 Pod。它会选择带有 app: project_name-project_env 标签的 Pod。 template: metadata: labels: app: project_name
-project_env
template: 定义 Pod 的模板。 spec: nodeSelector: environment: dtm
-project_env
     nodeSelector: 指定 Pod 应该在哪些节点上运行。这里 Pod 会运行在带有 environment: dtm-project_env标签的节点上。
      containers:
      - name: project_name-project_env
     name: 容器的名字。 image: project_images_url
image: 容器使用的镜像 lifecycle:
lifecycle: 定义容器的生命周期钩子。 postStart:
postStart: 在容器启动后执行的命令 exec:
exec: 执行 shell 命令,改变 /data/logs/data/webapps/data/cache 目录的所有者。 command:
- /bin/sh - -c - | chown -R www-data.www-data /data/logs /data/webapps /data/cache ports:
ports: 容器暴露的端口,这里暴露了 80 端口。
- containerPort: 80 resources:
resources: 定义容器的资源请求和限制 limits:
limits 用于设置容器可用的最大资源量。如果容器超出这些限制,可能会被 Kubernetes 终止(OOMKilled 或者超出 CPU 限制)。
限制(limits):用于限制容器的资源消耗,防止容器消耗过多的资源,影响其他 Pod。
memory:
"1Gi" cpu: "1" requests:
requests表示一个Pod需要的最小CPU和内存资源量。
请求值用来告诉 Kubernetes 调度器(Scheduler),这个 Pod 至少需要这些资源才能运行。
目的:通过定义请求值,Kubernetes 可以更好地将 Pod 安排到能够满足其最低需求的节点上。 memory:
"256Mi" cpu: "100m" terminationMessagePath: /dev/termination-log terminationMessagePolicy: File volumeMounts:
volumeMounts: 定义容器的卷挂载点。
- mountPath: /data/logs/svc/nginx
mountPath: 卷在容器中的挂载路径 name: nginx
-error-log
name: 引用的卷名称
imagePullSecrets:
imagePullSecrets: 用于拉取私有镜像仓库中的镜像。这里使用了 aliyun-registry-secret
- name: aliyun-registry-secret volumes:
volumes: 定义了容器使用的卷
- hostPath:
hostPath: 卷的类型,这里是主机路径。 path:
/data/logs/svc/nginx
path: 主机上的实际路径 type:
''
type: 定义路径类型(这里为空,表示默认值)。
name: nginx-error-log name: 卷的名称,用于在 volumeMounts 中引用。
复制代码

 

posted @   Hello_worlds  阅读(67)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示