配置静态文件,并将文件挂载到k8s

本项目部署在k8s系统上,图片、文件等都是挂载到k8s的nfs系统上的,也就是让本地的/home/oss文件挂载到nfs/k8s/oss上,然后文件上传到/home/oss上。

1、配置静态文件

配置静态文件,这样就可以通过链接访问上传到/home/oss上的文件。
访问http://ip:port/image/xxx.jpg,就能访问到上传到/home/oss上的文件了
在这里插入图片描述

@Configuration
@EnableControllerAdvice
public class ConsoleConfiguration implements WebMvcConfigurer {
 
    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(loginInterceptor()).addPathPatterns("/console/**");   //登录拦截器
      registry.addInterceptor(permissionInterceptor()).addPathPatterns("/console/**"); //权限拦截器
    }

    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/image/**").addResourceLocations("file:"+"/home/oss");
    }

    @Bean
    public OperationLoginInterceptor loginInterceptor(){
        return new OperationLoginInterceptor(); //设登录拦截器默认拦截所有方法
    }

    @Bean
    public OperationPermissionInterceptor permissionInterceptor(){
        return new OperationPermissionInterceptor();
    }


}
2、k8s配置

在这里插入图片描述
只改动deployment.json文件就可以了,service.json不需要改动

{
  "kind": "Deployment",
  "apiVersion": "apps/v1",
  "metadata": {
    "name": "${APP_NAME}-deployment",
    "namespace": "自己的命名空间",
    "labels": {
      "k8s-app": "${APP_NAME}"
    }
  },
  "spec": {
    "replicas": 1,
    "selector": {
      "matchLabels": {
        "k8s-app": "${APP_NAME}"
      }
    },
    "template": {
      "metadata": {
        "name": "${APP_NAME}",
        "labels": {
          "k8s-app": "${APP_NAME}"
        }
      },
      "spec": {
        "containers": [
          {
            "name": "app",
            "image": "hfdockerhub.com.cc:1443/hfocean/jenkins-${APP_NAME}:${BUILD_NUMBER}",
            "resources": {},
            "imagePullPolicy": "IfNotPresent",
            "securityContext": {
              "privileged": false,
              "procMount": "Default"
            },
            "ports":
              [{ "containerPort": 8080,
                "targetPort": 8080
              }],
              "volumeMounts":[
                {
                  "name": "oss",
                  "mountPath": "/home/oss"
                }
              ]
          }
        ],
        "volumes":[
          {
            "name": "oss",
            "hostPath": {
              "path": "/nfs/k8s/oss"
            }
          }
        ],
        "type": "NodePort",
        "restartPolicy": "Always",
        "terminationGracePeriodSeconds": 30,
        "dnsPolicy": "ClusterFirst",
        "securityContext": {},
        "schedulerName": "default-scheduler"
      }
    },
    "strategy": {
      "type": "RollingUpdate",
      "rollingUpdate": {
        "maxUnavailable": "25%",
        "maxSurge": "25%"
      }
    },
    "revisionHistoryLimit": 10,
    "progressDeadlineSeconds": 600
  }
}

重新部署项目

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值