- 博客(97)
- 资源 (21)
- 收藏
- 关注
原创 Windows下使用Cygwin创建rsync服务端
在你创建Cygwin目录的地方新建rsyncd.conf文件例如D:\yunlingfly\Cygwin\etc\rsyncd.conf,内容如下。上面会生成一个文件在/etc/passwd,你的用户名后面跟着的就是等会儿rsyncd.conf文件要填入的uid和gid,或者用指令。使用打开Cygwin安装后创建的快捷方式窗口,输入下面的指令将windows用户导入到cygwin下。路径可以自己选择,站点选阿里云的,等待安装即可。使用刚才的黑屏窗口创建备份目录并授权,创建密码文件并授权。
2024-07-18 21:47:28
805
原创 Nginx Proxy Manager反向代理Jackett
Jackett无需设置,npm设置如下:(forward IP为Docker内网IP,Jackett桥接网络不设置端口转发,起到隐藏端口的目的)最近折腾nas,发现npm反向代理Jackett后出现无法访问的问题,是因为外网访问jackett (例如。,如此一来,原来的port被丢弃,转发失败。)时,url会被重定向到。Advanced新增。
2024-06-23 16:03:04
550
原创 Windows Docker手动迁移镜像
Windows Docker手动迁移镜像,解决archive/ tar : invalid tar header问题
2024-06-06 12:23:28
762
2
原创 使用systemd启动Jenkins
说明之前一般我都是使用Tmux来启动Jenkins,自启啥的也比较麻烦,还是直接用systemd的方式来启动比较正规开始根目录位于/yunlingfly/jenkins/首先编写service文件>vim /usr/lib/systemd/system/jenkins.service[Unit]Description=jenkins projectAfter=network.target[Service]Type=simpleExecStart=/yunling
2022-01-09 21:33:34
2754
1
原创 Vue滑块验证码组件anji-captcha的使用
说明最近需要改一下首页界面,将之前的字符验证码改成滑块验证码(这样更好用一些),找了一下发现了anji-captcha这个组件,效果如下快速开始前端首先将仓库克隆下来->https://github.com/anji-plus/captcha.git,然后在自己的工程里copy需要的文件1)复制view/vue/src/components/verifition文件夹,到自己工程对应目录下复制view/vue/src/assets到自己工程对应目录下2)安装请求和加密依
2021-03-08 10:40:44
11518
1
原创 Github的特殊仓库
说明记录一下Github有趣的特殊仓库1 域名这个应该知道的人比较多了,新建一个username(不区分大小写).github.io的仓库,例如我自己的yunlingfly.github.io仓库这个仓库会为你生成相同的域名(例如https://yunlingfly.github.io/),默认访问你仓库根目录下的index.html,你就可以白嫖一个域名啦。当然你也可以像我一样,在index.html里只添加下面一句,这样就只是做跳转<meta http-equiv="refr
2021-02-23 09:34:36
1161
1
原创 使用Jenkins上传文件并部署后端分支
说明讲一下Jenkins部署分支好了,一般来说我们的开发环境和生产环境的配置文件/类的配置会不同,如果远程库就是部署环境然后修改本地文件又感觉欠妥,所以我们需要一个专门的分支来干这个事情,IDEA的版本控制真好用|ू・ω・` ),所以来讲一下IDEA怎么方便的干这个事快速开始Jenkins设置安装插件然后在管理界面输入你的目标部署机器创建项目并指定构建分支、构建和构建后操作Jenkins的配置到此结束,你可以自由的添加构建脚本来构建出你的jarGitlab
2021-01-27 11:34:33
1061
原创 Flyway在Springboot下的使用
说明在大部分情况下,我们通常会在一个项目中使用多个数据库,例如开始使用dev库,生产使用prod库。我们如果需要部署新的服务到生产环境,则需要手动修改prod库,使其数据格式与dev库一致,不然会出错。最近这种事情干多了,想要项目在启动时自动执行,又不想自己写脚本来做,就搜到了Flyway这个项目https://github.com/flyway/flyway,使用了一下感觉还行,上线生产将enabled开启就行,在这记录一下使用方式。全部代码已上传github->springboot-flywa
2020-12-15 13:48:23
582
1
原创 SQL分组选取时间最大的记录
说明最近没太多好写的ヽ(ー_ー)ノ,来记录一下昨天写的有趣的SQL好了快速开始首先来看一下我们的数据长啥样吧,建表SQL戳->test_max_time.sqlid create_date other_id(要分组的字段)1 2020-11-20 19:36:19 1112 2020-11-22 19:36:24 2223 2020-11-21 19:36:24 1114 2020-11-21 ...
2020-11-23 16:18:08
18253
2
原创 Spring Security学习笔记
Spring Security of DefaultSecurityFilterChainSecurityContextPersistenceFilterINFO 10220 — [ main] o.s.s.web.DefaultSecurityFilterChain : Creating filter chain: any request, [org.springframework.security.web.context.request.async.WebAsyncMan
2020-09-30 10:08:55
273
原创 Git分支设计与CI/CD
说明之前我们搭建了Jenkins(戳->使用Jenkins部署K8s项目)进行CI/CD,但是还有一个问题,如果我们一直基于master分支进行开发,并且Jenkins构建也是由于master分支变化而进行CI/CD的话会导致发布变得非常的频繁,每一个人都有发布的权限也会导致项目非常不稳定,这个时候我们就需要设置Git分支、GitLab的用户权限和Jenkins的构建策略来综合调整CI/CD的整个过程了,下面提供一种一般项目的Git分支设计和Jenkins的构建策略快速开始目标项目负责
2020-08-04 10:50:40
841
原创 使用Jenkins部署K8s项目
说明Continuous Integration(CI)和持续交付Continuous Delivery(CD)在项目中也算是比较重要的一部分,在我进行项目容器化的过程中,发现不断的自己去手工操作kubectl实在是太麻烦了,也不容易形成记录,在查找了一下资料后,选用了Jenkins进行CI/CD,下面通过一个具体的实例来记录我使用Jenkins的过程,有问题欢迎讨论( ̄ェ ̄;)。我的K8s是单Master多worker,多Master的话可能有不一样的地方,请酌情查看。快速开始Jenkins的
2020-08-04 09:16:08
2874
1
原创 在K8s下部署Kafka集群
说明今天来记录一下在K8s下部署Kafka集群,本以为K8s发展到今天已经有很多人踩过坑了,安装个Kafka问题也不大,可自己还是遇到了坑o(╥﹏╥)o,由于我的K8s集群是1master多worker,所以可能多master的情况下配置也不一样,请酌情查看。快速开始master_ip:192.168.128.52先创建一个命名空间,之后全在这操作kubectl create namespace zookeeperZookeeper集群的安装创建zookeeper-svc.ya
2020-07-01 09:23:46
4427
4
原创 Harbor 1.8的安装和使用
说明之前我们搭建了k8s,那么就会有另一个问题,我们的那些镜像文件不想放在公有云里,私有云镜像多快多安全啊。我找到的是Harbor这个镜像的仓库,由于内网环境不需要配置ssl,使用http的过程踩了一些坑,在这里记录一下。准备Harbor版本1.8.0 下载地址https://github.com/goharbor/harbor/releases(由于某些原因,国内不太好下载),离线安装包我放七牛云了->harbor-offline-installer-v1.8.0.tgzpostgr
2020-06-12 13:57:24
1250
3
原创 k8s的搭建
说明啊 总算有了三台服务器,可以搞个k8s玩了(ಥ_ಥ) ,在这里记录一下搭建过程,后续可能会用部署一些其他的服务在上面,有趣的话我再补充吧。机器:IP:192.168.1.51CentOS Linux release 7.8.2003 (Core)(4核8G)IP:192.168.1.52CentOS Linux release 7.8.2003 (Core)(master)(4核8G)IP:192.168.1.53CentOS Linux release 7.8.2003 (C...
2020-05-19 11:36:17
652
原创 使用jQuery QueryBuilder构建查询
说明最近在给老项目做各种新功能,其中一项是给数据添加各种用户自定义的查询,但是用户不会写SQL,我们得用图形化界面才能让他操作啊o(╥﹏╥)o,上网一搜,发现有我需要的东西->jQuery-QueryBuilder(还有一个国产的和这个很像,但很久没更新了不敢用->BuilderDynmic),实现效果类似下面点击确定直接返回下面的查询条件(可以直接拼到where)快速开始在这个例子中我的左边是一棵树,点击树加载右边table(字段不定),jQuery-QueryBuil
2020-05-09 09:46:46
3636
原创 流程节点改派人/组
说明我们在流程里可能也会遇到这样的需求:有人不想批这个单子了,或者批不过来了。。。想要把这个单子交给别人去批,那这个时候就改变这个节点的指派人/组就好啦,引擎自带了setAssignee和addCandidateGroup接口,可以直接调用。改派一般有四种情况:人->人,人->组,组->人,组->组。我下面写的逻辑为:①人->人的时候直接改;②人->...
2020-04-27 14:22:14
512
原创 使用Bpmn.js在vue里制作查看流程图组件
说明啊 好久不见,最近出差了很久,那久没写博客,来冒泡(填坑)啦~最近需要使用Bpmn.js制作流程的前端,技术上选的是vue,前几篇里我们一直讲的都是后端通用流程的实现,现在来讲一下前端吧(其实我是搞后端的ヽ(ー_ー)ノ有不对的地方欢迎指点)。快速开始默认项目已经引入bpmn-js等相关组件,我这里弹窗和按钮用的都是antdesign组件,你可以任意替换你喜欢的弹窗和按钮组件,直接上...
2020-03-31 10:37:51
6007
2
原创 SpringCloud Stream多源的使用
说明上次我们使用Amqp包进行MQ多数据源的接入,这次我们换一个包,使用SpringCloud里的Stream来进行接入。这次的接入方式要看起来更清晰好看一些,不用写配置Bean,通过bindings、binders、接口配置。快速开始引入包(我的Cloud版本为Greenwich.SR2) <dependency> <gr...
2020-01-16 16:04:35
991
原创 SpringBoot AMQP多源的使用
说明最近来写几个使用SpringBoot下会遇到的多数据源的接入问题以及处理方式吧~。在实际的项目中,我们经常会需要接入或者发给很多不同的MQ,那么在Springboot下有什么比较好的处理方式?当当当,AMQP(Advanced Message Queuing Protocol 高级消息队列协议)来啦,这是一个提供统一消息服务的应用层标准高级消息队列协议,是应用层协议的一个开放标准,为面...
2020-01-09 14:42:50
522
原创 在Springboot下使用Spock+Groovy进行测试
说明前久介绍了一下怎么使用领域驱动设计(DDD)来搭建后端项目,现在来填坑讲下在Springboot下使用Spock+Groovy进行测试ヽ(ー_ー)ノ介绍:Groovy是一种基于JVM(Java虚拟机)的敏捷开发语言,它结合了Python、Ruby和Smalltalk的许多强大的特性,Groovy 代码能够与 Java 代码很好地结合,也能用于扩展现有代码。由于其运行在 JVM 上的...
2019-12-09 15:37:04
1908
3
原创 内网环境下修改Docker Toolbox的访问地址并暴露端口
说明前久遇到一个比较奇葩的问题,我们都知道在Windows环境下配置Docker Toolbox,启动后docker访问地址是192.168.99.100,但如果此时我们内网配置的ip网段也在192.168这个网段上,会导致我们启动docker后ping别人的机器比如192.168.1.163不通,因为别人的机器也被当成是docker的适配器管理下的了,当然会找不到,在此记录一下解决方法快...
2019-11-05 16:40:28
3983
原创 后端领域驱动设计实例
说明1024程序员节快乐呀~今天不讲代码了,来玩点有趣的事吧( ̄~ ̄)。一般我们做后端项目的时候,一般都是使用controller-service-dao这样的方式去分层,那么其中数据的流转和转换一般都没有做过特别的约束,导致我们的项目的各种DO、VO、DTO等混杂在一起,能用,但是代码显得不那么有层次,在如今微服务/云原生越发火热的情境下,如何写出更加漂亮的项目,能够更容易的维护和阅读就显得...
2019-10-24 23:51:11
770
原创 Postgres11在CentOS7下的安装与使用
说明PostgreSQL是一种特性非常齐全的自由软件的对象-关系型数据库管理系统(ORDBMS),号称未来可能会使用这玩意儿搭一个集群,然后正式使用,先在这记录一下单机版的安装和使用快速开始Docker版docker pull postgres:11.5docker run -d --name mypostgresSQL -e POSTGRES_PASSWORD=12...
2019-09-20 10:52:02
791
原创 Kafka的学习笔记
说明温故而知新ε≡٩(๑>₃<)۶ 一心向学,再次看Kafka,在这记录一下Kafka的学习笔记。1 简介Kafka是最初由Linkedin公司开发,是一个分布式、分区的、多副本的、多订阅者,基于zookeeper协调的分布式日志系统(也可以当做MQ系统),常见可以用于web/nginx日志、访问日志,消息服务等等,Linkedin于2010年贡献给了Apache基金会并成...
2019-09-12 14:49:48
216
原创 异步线程池在SpringBoot下的使用
说明在程序执行过程中,我们经常需要开一个线程去处理其他的事情,并且是异步的,但是在高并发的情况下,如果不断的直接去newThread的话线程很快会被耗光,然后程序就卡死了,我们需要一个异步的线程池去管理和调度这些线程。在Spring中有一个ThreadPoolTaskExecutor类为我们封装了方法,只需要少量配置即可使用快速开始由于是Spring的类,所以pom没啥特殊的就一个S...
2019-09-02 10:09:19
387
原创 Mybatis-Plus在SpringBoot下的使用
说明项目使用Mybatis作为持久化框架时,我们可以使用一些别人再次封装的一些插件来提高开发效率,使用较多的如通用mapper,PageHelper等,这次介绍一个更好用的插件Mybatis-Plus,感觉这个比较像通用mapper+PageHelper,并且分页方面还可以选出总条数。Mybatis-plus官网->https://baomidou.gitee.io/mybatis-...
2019-08-30 11:47:19
3187
原创 Activiti6在Springboot下的使用 7 自定义用户分组
说明一般在流程中也会存在指定一个组去完成某项事情,然后组里的某一个人就会去完成该事项。在Activiti6里还存在用户和组的表(act_id_user和act_id_group)所以可以直接用,但在Activiti7里用户和组表就被删了,官方建议我们自己创建组表并维护ヽ(ー_ー)ノ(确实用户表、组表功能比较复杂,默认提供的功能可能不够,还是自己创建的好)快速开始下面是我创建的用户表和组...
2019-08-26 17:20:36
4539
原创 Activiti6在Springboot下的使用 6 并行网关的处理
说明流程中如果需要并行审批的话,我们可以使用并行网关来进行处理,例如下面的流程图:xml信息如下:<?xml version="1.0" encoding="UTF-8"?><bpmn:definitions xmlns:bpmn="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:bpmndi="http:...
2019-08-23 09:44:48
1069
1
原创 Activiti6在Springboot下的使用 5 节点数据流转
说明数据流转也是一个很常见的需求了,例如下一个节点任务需要拿到上一个节点的数据,处理自己的逻辑后再将自己的数据再放入流程里供下一个节点调用。快速开始还是使用上一节的流程图(xml文件上节有,不贴了):再次扩展我们的通用complete()接口,这次多加了一个前端传来参数的Map@Autowiredprivate BaseServiceUtil baseServiceUt...
2019-08-20 14:17:33
645
原创 Activiti6在Springboot下的使用 4 驳回流程
说明一般在流程中都会有驳回流程的需求,比如用户申请了一些事项,但后来审核驳回了这个请求,用户又需要重新提交表单。例如下图:快速开始首先既然需要驳回,就需要设置驳回的条件,我们需要在流程图里设置流转的变量。上图的bpmn文件如下,主要是设置了conditionExpression为${status!=1}和${status!=1}两种情况(假设status==0表示驳回,1表示同...
2019-08-19 14:56:52
2314
原创 Activiti6在Springboot下的使用 3 通用complete方法动态调用不同的Service
说明上一节我们编写了一个通用的complete()方法,实现了前端调用接口的通用性,但在实际的业务中,每一个请求我们希望都能有一个定制化的Service去具体处理这一个请求,也就是说,我们希望通用complete()方法能够调用不同的Service。下面提供一种实现该想法的思路。快速开始首先,编写一个基类Servicepublic interface IBaseService {...
2019-08-15 09:39:49
1354
1
原创 Activiti6在Springboot下的使用 2 动态部署流程与通用complete方法
说明上一节我们使用Springboot与Activiti6进行整合,介绍了Activiti提供的一些service的使用方法,现在我们来实践一下动态部署流程(BPMN文件),部分为伪代码,请意会快速开始1 动态部署编写一个接收文件的Controller@RestController@RequestMapping("/process")public class Proces...
2019-08-12 13:47:03
2430
2
原创 Activiti6在Springboot下的使用 1 基本service使用
说明最近需要弄一个通用的工作流引擎(前后端分离,前端绘制流程),选用Activiti6技术(6文档较多 7目前没有正式版,原理都差不多,7删除了几张表和service),在此记录一下Activiti6在Springboot下的使用(仅介绍后端,前端绘制略过)。主要使用到的activiti service如下:RepositoryService:对流程定义进行管理。RuntimeServi...
2019-08-12 11:46:47
2137
原创 制作swagger-spring-boot-starter并上传中央仓库
说明最近项目需要使用到swagger,目前官方还没有自己的starter使用,我们上次在文章Swagger2(starter版本)在SpringBoot下的使用使用了程序猿DD翟永超大佬写的spring-boot-starter-swagger版本来通过starter版本更快速的使用Swagger,现在我根据自己的需要也写了一个starter版本,欢迎使用和交流啊(σ゚∀゚)σ..:*☆哎哟不...
2019-03-12 10:33:28
1101
1
原创 SQL分组后将不存在的组记为0
说明最近遇到这么一个需求:统计区间在0-2000,2000-3000,3000-4000,4000-5000,5000+工资的人数。快速开始数据如下:开始看到这个问题,想都没想就开始写了下面的代码:SELECT case when salary < 2000 then '[0, 2000)' when salary >= 2000 and salary &...
2019-02-28 15:45:28
9180
6
原创 Vue组织架构树图组件vue-org-tree的使用
说明最近需要作出一个组织架构图来可视化展示一下,最后找到vue-org-tree这个组件,觉得效果还不错~,可选节点颜色、横向/纵向展开、打开/收起,在这记录一下使用方法,效果图如下:快速开始安装npm install --save-dev less less-loadernpm install --save-dev vue2-org-tree(可能还需要安装其他组件,...
2019-01-17 14:56:49
41758
29
原创 Mybatis使用if标签传入参数为String可能遇到的错误
说明最近在使用<if>标签合并接口和SQL的过程遇到了一些坑,放在这记录一下首先我们有下面这样一个mapper接口(根据status变量来选择不同的SQL):List<xxxxxxDTO> findAll(String status);问题一:There is no getter for property named 'xxxx' in 'class ja...
2018-12-28 17:12:41
3931
1
原创 Docker推镜像以及镜像加速
说明闲来无事写个Docker镜像上传和镜像加速教程~( ̄▽ ̄)~*快速开始上传首先得有一个docker仓库的账号->https://hub.docker.com/,先创建DockerHub一个账号,上传的镜像就放在这,然后准备一个本地的docker镜像注意镜像命名方式为dockerhub名+ / + 镜像名如果不是,请使用下面的命令重命名镜像,不然push的...
2018-12-27 11:17:31
1442
原创 npm install时,报错 install: `node install.js`安装失败
说明最近开始重新看前端框架,选择的是vueヽ(ー_ー)ノ,正常安装Node、vue、vue-cli,利用脚手架初始化项目,npm install时,报错 install: `node install.js`安装失败,看到2750 error chromedriver@2.33.2 install: `node install.js`2750 error Exit status 127...
2018-12-04 09:39:31
52418
6
harbor-offline-installer-v1.8.0.tgz
2020-06-29
分布式服务框架原理与实践_李林锋著
2018-10-25
领域驱动设计:软件核心复杂性应对之道
2018-10-25
Spring Boot部署到外部Tomcat的demo
2018-03-10
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人