k8s 快速部署 nginx 并通过 configMap配置 nginx.conf

说明

由3个yaml 构成

  • service
  • configMap
  • deployment

configMap.yaml

vi configMap.yaml

apiVersion: v1
kind: ConfigMap
metadata:
    name: web-nginx-config
data:
  nginx.conf: |
    user  nginx;
    worker_processes  1;

    error_log  /var/log/nginx/error.log warn;
    pid        /var/run/nginx.pid;


    events {
        worker_connections  1024;
    }


    http {
        include       /etc/nginx/mime.types;
        default_type  application/octet-stream;

        log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                          '$status $body_bytes_sent "$http_referer" '
                          '"$http_user_agent" "$http_x_forwarded_for"';

        access_log  /var/log/nginx/access.log  main;

        sendfile        on;
        #tcp_nopush     on;

        keepalive_timeout  65;

        #gzip  on;

        include /etc/nginx/conf.d/*.conf;
    }

deployment.yaml

vi deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: web-nginx
spec:
  replicas: 1
  selector:
    matchLabels:
      app: web-nginx
  template:
    metadata:
      labels:
        app: web-nginx
    spec:
      containers:
        - name: web-nginx
          image: nginx:1.14.2
          imagePullPolicy: IfNotPresent
          ports:
          - containerPort: 80
          volumeMounts:
          - name: web-nginx-config
            mountPath: /etc/nginx/nginx.conf
            subPath: nginx.conf
      volumes:
        - name: web-nginx-config
          configMap:
            name: web-nginx-config
            items:
            - key: nginx.conf
              path: nginx.conf

service.yaml

vi service.yaml

---
apiVersion: v1
kind: Service
metadata:
  name: web-nginx
  labels:
    app: web-nginx
spec:
  ports:
  - port: 80
    name: web
  clusterIP: None
  selector:
    app: web-nginx
---
apiVersion: v1
kind: Service
metadata:
  name: web-nginx-out
spec:
  type: NodePort
  sessionAffinity: ClientIP
  ports:
    - name: web-nginx-out
      port: 80
      targetPort: 80
      nodePort: 30080
  selector:
    app: web-nginx

执行部署

kubectl apply -f service
kubectl apply -f configMap
kubectl apply -f deployment

访问 30080端口

在这里插入图片描述

修改nginx.conf文件

kubectl edit cm web-nginx-config

  • 3
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值