文章列表

相对现代化的把控前端代码质量

, , ,
最近几天聊天,常常聊到 持续集成 辅助把控 代码质量 ,以前端团队为例,我们来简单聊聊。本篇很可能是你在网上能找到的使用容器应用最新版本 SonarQube 相对详细的一篇,或者是唯一一篇,所以如果遇到问题,欢迎和我进行讨论沟通。 阅读全文

使用 Traefik 提高 WebSocket 应用性能

, , ,
说起 Node.js 的 WebSocket 方案,可选的方案有许多种,其中许多方案都提供将 WS 服务端口和 HTTP 服务复用的方案,然而这种方案真的是最佳选择吗。不论是专业做实时通信的 [socket.io] ,还是用户量最大的 Express 的热门中间件 [express-ws] 都支持端口复用,比如 WS 和 HTTP 复用 80 端口, WSS 和 HTTPS 复用 443 端口。这里以 express-ws 底层封装的 [ws] 库为例,来简单剖析,socket.io 实现类似不过分层较多,有兴趣可以围观代码。不过在聊 Traefik 之前,我们先得聊聊 Node.js 和 Websocket。 阅读全文

使用 Docker CertBot 获取 SSL 证书

, , ,
Let‘s Encrypt 在很久之前就开始了证书的免费申请,但是随着 API 的升级、功能的增加,之前使用acme.sh 脚本就能够轻松获取证书的操作,变得越来越麻烦,而且随着配置项越来越多,浏览文档很难快速了解到什么才是当前的最佳实践。 阅读全文

更完善的 Docker + Traefik 使用方案

, , ,
在踩坑无数之后,多次修改后,这篇草稿箱中的文字终于得以成型,撒花。六月更新架构的时候,去掉了 openresty 作为服务器前端,取而代之的是裸跑 Traefik,因为只暴露网关的 80 / 443,后面所有子容器都是以 expose 方案对内暴露端口到一块虚拟网卡上,安全问题也不大,网关挂载着通配符证书,可以方便的添加删除后面的应用,虽说用起来挺舒服的,但是有两点始终让我不是很爽。 阅读全文

再次折腾构建服务

, , , , ,
五月的时候,分享过如何[使用私有CI来和GitHub联动],进行项目构建。这两天抽空,再次优化了一番,性能提高不少,目前看来还不错。 阅读全文

群晖系统上的 Docker 使用拾遗

, ,
这是一篇在草稿箱里积灰许久的文章,没有发布的原因是之前一直在犹豫要不要配一些例子。前一阵基于 traefik 折腾了一套新的最佳实践,跑了一个多季度,看起来一切都还不错,所以本篇内容就可以拆分成几个小点单独进行发布了。说起群晖的 Docker ,其实轻度使用的时候,跑个带端口映射的容器还真不错,但是在多个应用进行编排使用的时候,使用的时候还是有一些问题。 阅读全文

设置群晖 6.1 以及 6.2 使用证书免密登录

, ,
昨天重新整理了一遍家里的群晖系统的硬件,除了数据备份之外,从日志回收到通知告警再到上面跑的服务的更新,有机会可以详细写一遍。折腾过程中,ssh 连接操作必不可少,但是群晖系统却没有设置 RSA KEY 免密码认证的地方,导致每次连接都要输入服务器密码,很是讨厌,而简单创建 authorized_keys 对于群晖不生效也很有意思(先按下不表)。然后在网上进行了一顿搜索,不论是国外用户的博客还是官方论坛上的帖子,感觉都写的很繁琐,以及大量复制粘贴,甚至包含错误根本解决不了问题,故有了这篇文字。 阅读全文

清理 OSX 系统中的 Docker 容器、镜像与数据卷

, ,
说实话一直以来都很信任Docker的客户端,毕竟使用这么久只遇到过三次问题: 阅读全文

OSX 软件选择之编辑器

, ,
掐指一算,从14年到现在,即使不算自己折腾的黑苹果、妹纸的,Mac Book已经过手了八台,平均下来每半年多就要配置一次系统环境。从最开始折腾软件[考虑跨平台],到现在专注于单一平台,感觉个人的观念有了很大的变化,正值再次配置系统环境的时期,写一篇文章,记录一下。说到软件,不论是开发相关的工程师还是学术相关的研究生,都离不开编辑器,甚至毫不夸张的说编辑操作对我而言是使用Mac的核心功能之一了,那么就先从编辑器开始聊起。 阅读全文

聊聊群晖的进程守护

, , ,
[上篇文章中],我有写如何收集日志,并对日志服务进行进程守护加固,其中有提到使用群晖作为个人日志采集服务。但是群晖的系统是定制的,并不能够直接使用 supervisor 之类的工具来管理进程,查阅搜索引擎给出的答案,最接近的一篇是介绍如何在群晖上安装 supervisor,但是这篇文章有两个问题: 阅读全文