k8S通过Nginx挂载静态资源

11 篇文章 0 订阅
4 篇文章 0 订阅
本文介绍了如何在Kubernetes(K8S)环境中通过Nginx部署并挂载静态资源。首先,将静态资源上传到服务器指定路径。接着,编写Nginx的Deployment配置,包括设置副本数、挂载Nginx配置文件和静态文件目录。通过ConfigMap挂载配置文件,并使用NFS挂载静态资源路径。最后,创建Service暴露Nginx服务。
摘要由CSDN通过智能技术生成

k8S通过Nginx挂载静态资源

1、上传静态资源到服务器

我们将准备好的静态资源上传到服务器 /home/rke/nginx/html 该路径下

在这里插入图片描述

2、编写Nginx的Deployment

注意:Nginx通过K8S部署之后所使用的nginx.conf和静态文件位置的内容都需要通过挂载的方式去配置使用

apiVersion: apps/v1
kind: Deployment
metadata:
  name: photo-nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: photo-nginx
  template:
    metadata:
      labels:
        app: photo-nginx
    spec:
      containers:
      - name: photo-nginx
        image: nginx
        imagePullPolicy: Always
        ports:
        - containerPort: 83
        volumeMounts:
        - mountPath: /etc/nginx/nginx.conf
          name: photo-conf
          subPath: nginx.conf
        - mountPath: /usr/share/nginx/html
          name: nfs   #/usr/share/nginx/html 挂载到volumes中server+path
      volumes:
      - name: photo-conf
        configMap:
          name: photo-conf
      - name: nfs
        nfs:
          server: "172.31.0.110"    #挂载的IP地址
          path: "/home/rke/nginx/html" #挂载的位置
---
apiVersion: v1
kind: ConfigMap
metadata:
  name: photo-conf
data:
  nginx.conf: |
    worker_processes  1;
    events {
        worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        client_max_body_size 50m;
        sendfile        on;
        keepalive_timeout  65;
        server {
            listen       83;
            server_name  localhost;
            root   /usr/share/nginx/html;
            location / {
               index  index.html index.htm;
            }
            location ~* ^.+\.(js|ico|gif|jpg|jpeg|png|html|htm)$ {
               log_not_found off;
               access_log off;
               expires 7d;
            }
        }
    }
---
apiVersion: v1
kind: Service
metadata:
  name: photo-nginx
  labels:
    name: photo-nginx
spec:
  type: NodePort
  ports:
  - port: 83
    targetPort: 83
    nodePort: 83
  selector:
    app: photo-nginx

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值