私人Docker Registry搭建指南

在以前使用docker镜像的构建上传过程中一直都是使用的export DECKSER_HOST的方式,但由于暴露了2375端口之后,任何人无需认证即可上传镜像和运行容器,并且挂载宿主机的文件到容器内部,十分危险,docker官方也不推荐这么做,所以我以前的做法是暴露到非2375端口如10086之类的,虽然减少了黑产扫描到的概率,但依然存在很大的风险,但是docker hub能免费使用的私人仓库限制 ……

Github Actions workflow使用记录

由于自己的服务器普遍配置较低,在jenkins构建时会出现内存溢出的情况,这样的直接后果就是jenkins直接跪掉重启,项目构建失败。 对于普通的小项目,似乎够用,但是我有个项目,包含大约500MB静态图片,需要通过img-loader的几个插件进行图片压缩,压缩过程十分占用内存和cpu,使得服务器压力过大,于是在码云仓库爆仓(大于500MB)之际,我打算将仓库转移到github,并且jenkin ……

webpack 学习记录 (二)

本篇文章以Fishing Funds的v3分支到v4分支的改造过程,进一步学习webpack Fishing Funds 在v4版本以前均基于electron-react-boilerplate 当时时间节点的最新master分支开发,electron-react-boilerplate 作为一个React + Electron + Typescript的模版仓库,是一个非常优秀的开源项目,但是看 ……

Linux下 WebHook + Jenkins Pipline + Docker 实现web自动化容器部署

步骤一 安装jenkins 采用docker拉取jenkins官方最新镜像 创建Jenkins容器,这里推荐docker-compose创建, docker-compose.yml如下 如果没有配nginx,ports中直接设置为 将jenkins主目录挂在到宿主机的/home/jenkins-home(自己能记住就行) 由于我们即将部署的web项目是采用docker部署,所以将宿主机中的dock ……

Nuxt + ElementUI Vue项目代码精简、压缩 记录

最近参与一个使用Nuxt+element-ui构建的Vue项目,由于要做SEO所以部分页面采用ssr(server side render) 这个项目本身最重要的就是首页展示,但是由于部分业务逻辑涉及到表单再加上布局方便,所以引入了ElementUI,这导致了整个项目异常臃肿,再加上ElementUi自带的slider组件不支持移动端的滑动,所以我又引入了第三方轮播组件Swiper,这两个库占用了 ……

理解Object.defineProperty和ES6 proxy对象

最近在学习mobX的时候,探究了一下其实现机制,发现最神奇的莫过于,其中使用@observable装饰的变量的改变可以触发autorun的回调,使用了观察者模式和发布/订阅模式很类似,而这种模式反应在javascript对象上的本质就是Object.defineProperty,在很多框架中的数据双向流绑定也是这样实现的,比如Vue

Linux下 WebHook + node.js 实现web自动化部署

最初我是使用ftp上传最新项目进行部署,后来是登陆服务器使用git pull来下拉代码,都不是很方便,后来发现可以利用git带的webhook来实现代码上传自动部署 原理 每次使用git 命令后可以触发webhook钩子,向指定的服务器发送一个post请求,服务器接收到该请求,执行shell命令实现自动下拉代码