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
在这里插入代码片
复制代码
相关推荐
运维开发故事2 天前
基于 Arthas 的多集群在线诊断系统设计与实现
kubernetes
Patrick_Wilson4 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
探索云原生4 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
Suroy4 天前
DockerView-Go:用 Go 写一个终端 Docker 监控工具,顺便做了个 Web 仪表盘
docker
云恒要逆袭4 天前
运行你的第一个Docker容器
后端·docker·容器
宋均浩5 天前
# Docker 镜像瘦身实战:从 1.2G 到 80MB 的五个优化步骤
ci/cd·docker
Java之美5 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
Avan_菜菜6 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
程序员老赵6 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程