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
在这里插入代码片
复制代码
相关推荐
Wang's Blog1 分钟前
Java 项目部署之 Docker工具快速入门: 自定义镜像的分层结构与写时复制
java·开发语言·docker
VIP_CQCRE13 小时前
给团队搭一个 AI 工作台:Open WebUI 接入 Ace Data Cloud 实战
docker·ai·rag·open webui·ace data cloud
光依旧14 小时前
发版就掉请求?Spring Boot优雅停机的四步
运维·spring boot·nginx·高可用·优雅停机·mcp server
程序员老赵16 小时前
Docker 部署 Portainer CE:轻松搭建容器管理平台
docker·容器·开源
TTATTC17 小时前
Gmail、Drive、日历共用一套命令:gws 如何在运行时把 Discovery 文档编译成 CLI
docker·开源
大侠归来17 小时前
Docker 部署 Dolibarr:从零开始的完整指南
运维·docker·容器
七月吃橘子18 小时前
WSL2+Docker+Ollama,本地部署大模型实践(Qwen1.8b)
运维·docker·容器
Nontee18 小时前
K3s vs K8s:差的不是功能,是交付方式
云原生·容器·kubernetes
做运维的阿瑞19 小时前
Docker常见故障全方位排查指南
运维·docker·云原生·容器