自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(93)
  • 收藏
  • 关注

原创 使用docker指令删除所有不再使用的镜像

a:这个选项表示清理所有不再使用的镜像,包括未被标记的悬空镜像和已被标记为 的镜像。在执行这个命令之前,请确保你了解它的影响,因为它将永久删除未被使用的镜像。docker image prune:这个命令用于清理不再使用的镜像。

2024-04-19 10:04:33 210 1

原创 nexus搭建maven与docker镜像的私有仓库

在遇到这个问题的时候,查阅了网上资料,没有任何相关答案,要么是说admin账户未添加docker的权限,可是无权限报的是401错误应该。最后打开了nexus自带的日志权限调整页面,调整了nexus业务相关的日志为debug权限,在日志中成功看到了这个异常的详情。这个地方出现了uri相关的自定义配置,应该调试这里,受到思维惯性的影响认为maven私有仓库包的上传与下载均正常,以及nexus平台访问正常,所以认为这个配置是没问题的忽略了。docker login的时候倘若报了登录权限问题。

2024-04-10 16:37:56 779

原创 curl下载nexus中的jar包

【代码】curl下载nexus中的jar包。

2024-04-08 08:37:58 217

原创 Debian GNU/Linux 安装docker与docker compose

【代码】Debian GNU/Linux 安装docker与docker compose。

2024-03-28 15:16:58 708

原创 nacos连接异常:/nacos/v1/ns/instance after all servers([env-nginx:10]) tried: ErrCode:400, ErrMsg:<html><

:na]/:na]/:na]/:na]/:na]/:3.1.1]/:3.1.1]/:3.1.1]/:3.1.1]/:3.1.1]/:5.3.20]/:5.3.20]/:5.3.20]/:5.3.20]/:5.3.20]/:2.7.0]/:5.3.20]DefaultLifecycleProcessorjava54spring−context−5.3.20.jar!

2024-03-26 11:26:26 875

原创 本地gitlab-runner的创建与注册

之前通过一些方式在本地创建runner,时而会出现一些未知的坑,所以写下本文记录runner可以无坑创建的方式。以下注册runner到相应仓库的前提是已经在本地安装了gitlab-runner 具体安装方式见官网。

2024-03-19 14:28:16 503

原创 redis-pro客户端工具的坑记录,账号密码正确测试连接成功(Test connection),却无法连接成功(connect)

点击测试连接Test connection 按钮成功后,要点击旁边的save按钮保存,再点击connect才能使用最新的配置连接redis

2024-03-11 16:23:55 359

原创 mysql binlog自动删除与手动删除

另外,如果你只想删除旧的二进制日志文件而保留最新的日志文件,可以使用 PURGE BINARY LOGS BEFORE NOW() 命令。这样可以删除早于当前时间的所有二进制日志文件,而保留当前正在使用的日志文件。请注意,执行 RESET MASTER 命令后,之前的二进制日志将无法恢复,因此在执行之前请确保你已经完成了必要的备份工作,并且明确了对数据的影响。RESET MASTER 命令可以用于删除所有的二进制日志(binlog)文件,并将二进制日志索引文件重置为新的空文件。

2024-03-11 11:28:02 578

原创 mac 查询JAVA_HOME地址

通过指令 /usr/libexec/java_home 查询。

2024-03-11 11:23:03 329

原创 mac 查询JAVA_HOME地址

通过指令 /usr/libexec/java_home 查询

2024-03-07 14:12:25 328

原创 Spring Boot不同配置文件名和配置文件所在路径的优先级

配置文件在同路径下application.properties 覆盖 application.yml 覆盖 bootstrap.yml当resource/config和resource目录有相同的配置文件resource/config下同名配置文件 覆盖 resource下同名配置文件当resource/config路径下只有application.yml,而resource路径有。

2024-03-07 08:56:35 485

原创 mac设置java环境变量

终端会返回 Java 的安装路径,类似 /Library/Java/JavaVirtualMachines/jdk1.8.0_402.jdk/Contents/Home。保存文件并执行 source ~/.bashrc(或 source ~/.bash_profile、source ~/.zshrc)来使环境变量生效。重新启动终端或运行 mvn -version 命令查看是否成功设置 JAVA_HOME 环境变量。输入以下命令来查找 Java 的安装路径:/usr/libexec/java_home。

2024-03-06 16:07:48 657

原创 docker-compose.yml 中设置了 mysql 的MYSQL_ROOT_PASSWORD未生效

经过查阅相关资料,因为在调试阶段,删除了容器又重新构建镜像生成容器,但是容器卷的映射是固定的所以保存在容器卷中的密码一直被使用未被更改,所以生成容器前需要删除容器卷,然后再部署。如下所示使用docker-compose设置mysql生成容器时的默认密码不生效。

2024-02-29 11:20:25 509

原创 mysql时区之数据库自动生成默认时间不正确进行校正

只对当前会话的时间戳有影响不会对其他连接的会话产生影响。sql验证自动生成的时间是否是不正确的。经验证确定是自动生成的时间不正确,进而想到了对时间进行校正。因此将数据库时间戳所使用的时区进行固定。经查看确认数据库自动生成时间戳所使用的时区是system系统时区。查看数据库数据,发现表中自动生成的创建时间不正确,故先使用。– 显示当前日期和时间。首先查看数据库时间的时区是否是当地的。

2024-02-19 17:08:00 554

原创 导出文件响应头Content-Disposition值直接填写中文字符失效处理

filename字符编码的问题,需要将其编码为utf-8格式后再拼接才会生效中文名。在做导出数据为excel文件的时候,定义http请求的响应头如下所示。当filename为中文则会失效。

2024-02-02 16:54:34 651

原创 dockerfile不可以使用../作为路径在上级目录查找文件

总结:dockerfile只能访问与其文件同级的文件或者目录,无法访问上一级文件或目录。如有需要访问上一级的资源可将其提前copy到与dockerfile同级的目录,或者变更dockerfile所在的路径使得所需的资源与其同级。/ 跳转到上级目录。Dockerfile 中的路径是相对于构建上下文路径的,而构建上下文指定了在构建镜像时可访问的文件和目录的范围。如果你需要在 Dockerfile 中引用上级目录中的文件或目录,可以将上级目录作为构建上下文,并使用相对于构建上下文的路径来指定源文件或目录。

2024-01-24 09:13:23 721

原创 将某个GitLab上的项目自动同步到另一个GitLab账户下的仓库

我们在进行项目迁移,或者是给甲乙外包写项目,需要迁移代码或者同步更新时,所处于的GitLab地址是不一样的,那么我们如何进行同步呢?我们可能第一时间会想到,先拉A地址的代码到本地,然后覆盖提交到B地址,可是如果每天都需要进行这个操作,或者说是实时更新,是很让人头疼的事情,那么有没有办法可以解决这个问题呢?首先我们定义 A为需要导出的项目GitLab地址即源仓库,以下简称为A, B为需要导入更新方即目标仓库,以下简称为B。我们来到地址B,首先新建立一个群组,如果不需要建立群组可以直接跳过该步骤。

2024-01-17 09:19:55 902

原创 springcloud gateway正确路由配置 uri找不到服务?

在集成nacos组件以及springcloudalibaba 的gateway时,出现正确配置,如下文配置,却在测试demo调用该服务的时候,无法路由到此服务,说是无效服务。不考虑网关,只考虑服务时,服务名命名时比较自由,都能启动被访问,被注册到注册中心,但是如果提供给gateway使用时,就会对服务命名方式有特殊要求了。第三种:lb(注册中心中服务名字)方式: uri: lb://brilliance-consumer。第二种:http方式: uri: http://localhost:8130/

2024-01-16 17:13:51 912

原创 如何控制docker服务的日志输出?

Docker Compose使用的日志驱动程序负责记录容器的日志。通过docker部署的线上服务,由于宿主机存储空间有限,加上长时间累积的客观条件下,会出现docker服务的控制台日志过大。在实际应用中,您可能需要根据自己的具体需求选择更合适的日志驱动程序,例如使用。要开启日志功能,您需要将适当的日志驱动程序添加到Docker Compose文件中。现在,当您启动Docker Compose时,容器的日志将被记录在文件中。要关闭日志功能,您可以将日志驱动程序设置为空或使用。这将关闭对该服务的日志记录。

2024-01-12 15:17:52 642

原创 SpringBoot中 如何优雅的 重试调用 第三方API?

Spring Retry是Spring框架提供的一个模块,它通过提供注解或编程方式的方式,帮助我们实现方法级别的重试机制。在Spring Boot中,可以很方便地集成并使用Spring Retry。在Spring Boot项目中,通过集成Spring Retry模块,我们可以优雅地实现对第三方API调用的重试机制。通过@Retryable注解,我们能够很方便地在方法级别上添加重试策略。同时,异步方法和异常类型的支持使得我们能够更灵活地应对不同的业务场景。

2024-01-12 14:23:03 1078

原创 docker镜像版本号规则定义

Docker的tag是用于标识Docker镜像版本的一个字符串,通常格式为。其中指的是镜像的名称,<version>则是镜像的版本号。在定义Docker镜像的tag时,建议使用语义化版本号(Semantic Versioning),即格式,例如1.2.3。这样可以清晰地表示镜像版本的重要性和更新程度,方便用户进行版本控制和管理。此外,也可以在tag中加入其他的信息,例如构建日期、Git commit哈希值等,以便于更好地追踪镜像的变更历史和来源。。Git commit哈希值。

2024-01-10 10:58:16 700

原创 java打印http接口的请求和响应

基于spring提供的机制,有3种方法可以实现接口请求响应日志的打印,分别是CommonsRequestLoggingFilter、HandlerInterceptor、RequestBodyAdviceAdapter、ResponseBodyAdvice。

2024-01-09 16:27:46 1658

原创 日志查看技巧

grep -10 ‘apdgad50dbf84e99b1b16a31aacd201c’ info.log (10是指上下10行)按照关键字或者链路trackId 搜索查看日志。

2023-12-25 16:41:58 382

原创 @RabbitListener配置了消费的消息为空

在配置都配置的情况下报反序列化异常,很大程度上是反序列化的类跟生产者那边序列化的类路径或者内容不一样。此时可通过spring amqp自带的消息转化器处理,如下。@RabbitListener(queues =检查这个地方的值是否配置对了)倘若未报异常的话首先要检查,队列信息是否绑定对了。

2023-12-18 18:41:12 387

原创 spingboot生产环境启动异常处理:Could not initialize ValueExtractorManager

今天在做将本地的springboot项目通过docker的方式部署到生产环境的工作时,发现docker下的jar包启动后包下面异常,经过网上调研,一开始都是说是包冲突之类的文章,尝试添加相关包未解决。后又遇到说是tomcat版本问题,觉得这个原因不是这次遇到这个问题的原因,因而未尝试。最后查阅后发先一篇文章说其是jdk版本的问题,又结合自己本地的jdk版本确实是比生产环境高。然后将生产环境docker的jdk镜像版本由openjdk:8-jre 调整到了 openjdk:8-jdk,发版后问题依旧。

2023-12-12 15:25:08 862

原创 Mysql:慢cpu过高慢sql查询方法

以上是最新实践结果。

2023-12-11 13:18:17 425

原创 MYSQL常用sql与指令

查询数据库配置的最大连接数SHOW STATUS LIKE ‘Threads_connected’;查询当前已建立的连接数SHOW STATUS LIKE ‘Threads_connected’;

2023-12-05 14:03:58 339

原创 连接MySQL提示“Public Key Retrieval is not allowed“问题解决方式

有多种方法可用于解决此问题(请选择最适合您的一种)

2023-12-05 10:10:27 448

原创 springboot集成redis

需要注意的是,上述配置中的 lettuce 是 Spring Boot 中使用的 Redis 客户端库之一,用于连接 Redis 服务器和执行 Redis 命令。如果您使用的是其他的 Redis 客户端库,如 Jedis,那么对应的配置属性可能会有所不同。如果希望将 Redis 的数据持久化到磁盘,以实现数据的持久化存储和可靠性保证,可以通过 Redis 提供的持久化机制来实现。持久化的频率应该根据数据的重要性、变化频率和系统负载等因素进行权衡,保证数据的可靠性和性能的平衡。

2023-11-03 10:48:43 66

原创 docker镜像本地下载与上传

完成以上步骤后,就可以在本地存储中使用保存的镜像了。可以使用docker load命令将tar文件加载为Docker镜像。要在本地保存Docker镜像,可以使用docker save命令将镜像保存为tar文件,然后将该文件复制到本地存储。scp [本地文件相对或绝对路径] [目标服务器用户名称]@[目标服务器ip]:[目标服务器存储地址绝对路径]这样就可以在本地计算机上使用docker run等命令来运行该镜像了。

2023-10-24 14:39:53 913

原创 docker network 组件内网

将容器绑定到network 下的 bridge 网桥或者 host网桥,绑定host的话则容器网络等于完全依赖宿主机,失去自己独立的网络无自己的网关,全部依赖宿主机。该命令将显示所有可用的 Docker 网络,包括网络 ID、名称、驱动程序和范围等信息。该命令用于删除指定的网络。要删除网络,首先必须确保没有容器连接到该网络。该命令将显示指定网络的详细信息,包括容器连接、IP 范围、网关等。使用该命令可以将指定容器从指定网络中断开连接。通过这个命令,可以将指定容器连接到指定网络。

2023-10-12 10:03:06 230

原创 mqtt协议流程图

mqtt流程图

2023-07-31 15:14:25 1382

原创 修改git(gitLab)上的提交者姓名

输入git config user.name 查看当前显示作者git config user.name然后输入git config --global user.name "用户名"进行修改git config --global user.name “new name”

2023-06-25 10:41:41 287

原创 mybatis在xml中写in

例如List selectProductNumCountByGroupConfigModel(@Param(“batteryTypeIds”)List batteryTypeIds);注意此时参数前不能使用@param否则会在下面的书写方式下会冲突报错。

2023-05-17 15:23:05 739

原创 spring注解

ConditionalOnMissingBean,它是修饰bean的一个注解,主要实现的是,当你的bean被注册之后,如果而注册相同类型的bean,就不会成功,它会保证你的bean只有一个,即你的实例只有一个。在spring ioc的过程中,优先解析@Component,@Service,@Controller注解的类。但是bean1的条件注解依赖的是city,city是被定义的配置类中的,因为两个Bean都是配置类中Bean,所以此时配置类的解析无法保证先后顺序,就会出现不生效的情况。

2023-04-03 14:07:25 12

原创 Mybatis缓存机制(一级缓存、二级缓存、三级缓存)

是多个 SqlSession 共享的,其作用域是 mapper 的同一个 namespace,不同 的 sqlSession 两次执行相同 namespace 下的 sql 语句且向 sql 中传递参数也相同即最终执行 相同的 sql 语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从 缓存中获取数据将不再从数据库查询,从而提高查询效率。时,mybatis觉得获取的数据可能会被修改,mybatis会利用序列化&反序列化的技术克隆一份新的数据给你,安全,但速度慢。

2023-04-01 17:00:02 36

原创 Springboot读取外部配置文件,项目部署时配置读取不到问题

nohup java -jar xxx.jar >/dev/null 2>&1 &,直接使用命令nohup java -jar /home/liuch/app/xxx.jar >/dev/null 2>&1 & 启动时不会去读取config文件夹下的配置文件,需要使用-Dspring.config.location= 指定配置文件位置,此时我们的非默认配置文件是读取不到的,我们可以在application.yml文件中配置需要加载的非默认配置文件位置,下面的@Value的用法和之前一样。

2023-03-14 09:22:53 3775

原创 使用JSONObject.toJSONString 会过滤掉值为空的key

当使用alibaba的fastjson工具类序列化实体类时,默认其会自动过滤掉null空的字段属性,在序列化的时候不会进行展示。一些工具类的这个方法也是同理,倘若需要序列化空字段的属性,在SerializerFeature枚举类中选择相应的标识即可。倘若在mq传递消息时会因为部分字段不存在渲染不进去mq那边的实体类,此时可使用以下方法。使用Features字段来声明需要序列化。示例及相关资料如下。

2023-02-23 10:42:17 3248

原创 java.lang.IllegalArgumentException: SimpleMessageConverter only supports String, byte[] and Serializ

实现Serializable 接口后定义private static final long serialVersionUID = 1L;的意义,在jvm反序列化时会校验该值是否变化,有变化则抛出异常程序不兼容,倘若认为定义了该值,类修改了则不会自动修改serialVersionUID值,则会默认版本兼容。

2023-02-21 19:22:48 266

原创 emqx异常处理

修改解压包后 /opt/emqx/etc/emqx.conf 内的cookie名 然后启动命令改为 ./bin/emqx start &通过解压tar压缩包安装后通过 ./bin/emqx start 启动报错。

2023-02-14 11:12:21 5089 9

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除