记录一次修复 Spring Framework Bug 的经历 Spring RestTemplate拦截器修改请求体导致的诡异问题最近在工作中发现了Spring的一个”特性”(也许可以叫Bug?),反正我已经给Spring提了PR,等着看能不能合进去 已经合入啦! 问题背景最近在调用第三方API时,遇到了一个有意思的场景。整个调用流程大概是这样的: 先调用 /login 接口,发送username和password,对方服务返回一个JWT。 之后的每个请求 2024-09-01 #Coding #Java #Spring
国内目前可用的DoH(2024-12-6) 什么是DoH?DoH(DNS over HTTPS)是一种通过HTTPS协议进行DNS查询的方法,旨在增加DNS查询的安全性和隐私保护。传统的DNS查询是以明文形式传输的,极易受到劫持和监控的威胁。而DoH则通过加密的HTTPS通道传递DNS请求,从而有效防止了数据被第三方窃听或篡改。 省流: DoH种通过HTTPS加密传输DNS请求,防止第三方监控和篡改DNS查询,提升隐私和安全性。 那么D 2024-06-09 #DNS #DoH
优化Spring Boot镜像 🚀 优化Spring Boot镜像,让它更小更快 🚀在上一篇博客里,我们学习了如何将Spring Boot项目打包成Docker镜像 (打包Spring Boot应用到Docker镜像)。不过,默认构建出来的镜像有点太大啦,启动速度也不太理想。今天咱们就来学习几个小技巧,让镜像变小变快吧! 使用更小的基础镜像 🐳之前我们使用的是eclipse-temurin:17-jre作为基础镜像,它包含了完整 2024-05-19 #Coding #Java #Spring #Docker
打包Spring Boot应用到Docker镜像 🚢 打包Spring Boot应用到Docker镜像 🚢自从容器技术火热以来,Docker成了开发者部署和发布应用的利器。而Spring Boot作为简洁高效的Java框架,也备受开发者喜爱。今天我们就来聊聊如何把一个Spring Boot项目打包成Docker镜像,然后部署到容器中运行。 环境准备 🍃开始之前,我们先准备一下必备的环境。我们以一个maven项目为例: Docker JDK和ma 2024-05-18 #Coding #Java #Spring #Docker
在K3d中部署SpringBoot 在前面的文章中,我们学习了如何使用k3d在本地快速创建一个Kubernetes集群环境。作为一个轻量级的Kubernetes发行版,k3s为我们提供了简单高效的方式来学习和体验Kubernetes。 这次,我们将在k3d集群中部署一个基于SpringBoot的微服务应用,并通过Ingress暴露服务进行访问。让我们开始吧! 准备工作 如果你还没有搭建k3d环境,可以参考我的这篇文章 - 在K3d中 2024-04-15 #docker #k3d #springboot
在K3d中部署Rancher 在之前的文章中,我们学习了如何使用k3d快速创建一个本地的多节点Kubernetes集群环境。作为一个轻量级的Kubernetes发行版,k3s为我们提供了一个简单高效的方式来体验和学习Kubernetes。 然而,对于大多数企业用户来说,仅仅拥有一个裸露的Kubernetes集群是远远不够的。他们还需要一个功能强大且易于使用的Kubernetes管理工具。而Rancher正是当下最受欢迎的Kub 2024-04-07 #docker #k3d #rancher
k3d - 3分钟创建一个生产级k8s集群 本标题可能有歧义,此集群只用于本地测试,请勿用于生产(我想也没人会这么干) 当我们谈论到容器编排技术时,Kubernetes(简称K8s)无疑是一个家喻户晓的名字。 但是,对于想要学习Kubernetes的人来说,搭建一个本地环境却往往是一件头疼的事情。从安装各种依赖到配置繁琐的集群,这一过程常常让人望而却步。 这个时候,就需要 k3d 闪亮登场啦。k3d可以说是k8s本地环境的”最佳拍档”。 2024-04-03 #docker #k3d
Docker创建双栈网络 在docker中创建双栈网络docker network create \ --subnet="2001:db8:30::/64" --gateway="2001:db8:30::1" --ipv6 \ --subnet=172.30.0.0/16 --gateway=172.30.0.1 \ my-net 在docker-compose中指定网络name: my-ap 2023-11-26 #docker
记录 spring-boot-native 中遇到的一些问题 如何添加启动参数 https://buildpacks.io/docs/app-developer-guide/run-an-app/#default-process-type-with-additional-arguments 如何添加JVM参数 https://paketo.io/docs/howto/java/#configure-the-jvm-at-runtime 如何添加静态资源 2023-08-15 #Coding #Java #Spring