K8s部署一个nginx的应用

我们在mster节点上主要有两种部署应用的方式,一个是通过命令行的形式,一个是通过编写yaml文件的形式,类似linux中脚本一样。以下是部署nginx的例子:

一、通过命令行的方式 :

1、部署应用kubectl create deployment nginx-deployment --image=nginx --replicas=3 --port=80

2、暴露应用服务:kubectl expose deployment nginx-deployment --type=NodePort --port=80 --target-port=80

3、查看集群部署状态:kubectl get deployment,svc

4、通过公网ip+NodePort端口号的方式访问nginx服务

二、通过编写yaml文件的方式进行部署

1、编写YAML文件,包含部署一个Deployment应用和一个服务service 来暴漏应用

2、执行Yaml部署文件:kubectl apply -f nginx-deploymen.yaml

3、查看资源部署状态:kubectl get deployment,svc

4、通过公网ip+nodeport 端口号访问nginx服务

在写yaml 文件的时候一定要注意缩进,因为它是靠缩进来进行分层的,所以一定要严格按照格式来编写

yaml 复制代码
# nginx 应用部署
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  replicas: 3  # 副本数3个
  selector:
    matchLabels:
      app: nginx-deployment
  template:
    metadata:
      labels:
        app: nginx-deployment
    spec:
      containers:
      - name: my-nginx-co
        image: nginx  # nginx镜像
        ports:
        - containerPort: 80  # 暴露端口号

# nginx 服务暴露
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx-deployment
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  type: NodePort

```yaml
在这里插入代码片
复制代码
相关推荐
kishu_iOS&AI12 分钟前
Mac —— Docker Desktop(Milvus和Redis)部署
redis·docker·milvus
张忠琳15 分钟前
【client-go v0.36.1】tools/cache 深度分析(上篇)— 模块定位、整体结构、接口与依赖关系
云原生·kubernetes·cache·informer·client-go
张忠琳23 分钟前
【client-go v0.36.1】(Reflector Part 1)Reflector 超深度分析 — 模块定位、整体结构、接口与依赖
云原生·kubernetes·informer·client-go·reflector
花花少年1 小时前
基于Docker快速部署OneAPI以及统一调用国产大模型
docker·oneapi·deepseek
张忠琳1 小时前
【client-go v0.36.1】client-go v0.36.1 系统级架构分析(下篇)
云原生·kubernetes·client-go
杨了个杨89821 小时前
Docker简介及安装
运维·docker·容器
IT策士2 小时前
第50篇 k8s之系列总结 + 项目演示与后续扩展
云原生·容器·kubernetes
胖胖雕2 小时前
LLM增强的网易云API部署用于鸿蒙原生音乐app: Melotopia
docker·node.js·harmony
卧室小白2 小时前
K8S-Pod的生命周期与调度
云原生·容器·kubernetes
江华森2 小时前
Docker 基础实战完整指南
运维·docker·容器