聊聊公益和助学
很多时候,帮助人不需要那么多理由
为什么奥特曼是我的信仰
優しさを失わないでくれ。弱い者を労り互いに助け合い。
家庭 Homelab 升级计划
人生嘛,Homelab 图个乐子
简单聊聊 IaC:Infrastructure as Code
实际上 IaC 这个概念的出现已经很久了,所以写篇水文来简单聊聊 IaC 的过去,现在,和将来 IaC 的过去实际上 IaC 的历史其实足够悠久。首先来看一下 IaC 的核心的特征 最终的产物是 machine readable 的的产物。可能是一份代码,也可能是一份配制文件 基于 machine readable 的产物,可以进一步依赖已有的 VCS 系统(SVN,Git)等做版本管理 基于 machine readable 的产物,可以进一步依赖已有的 CI/CD 系统(Jenkins,Travis CI)等做持续集成/持续交付 状态的一致性,或者称为幂等性。即理论上来讲,基于同样一份 Code,同一套参数构建出的产物,其最终的行为应该是一致的 实际上通过 IaC 这样的一些核心特征,我们现在能明白 IaC 兴起的原因。IaC 实际上的兴起,大背景是在千禧年之后,互联网世界迭代的速度愈发的快速,这个时候传统的手工式的维护面临着几个问题 交互式变更所引入的人的因素太大,导致了变更的不可控性 人工变更面对愈发快速的 Infra...
从一个重构项目中能学到什么东西
本来这篇文章是要在 2022 最后一个工作日前写完的,但是拖延癌发作,到现在才写完。不过还是发出来,希望里面的内容能帮到大家 背景介绍这个重构项目如果从我第一个超大型重构 PR 算起(22年12月11日),到现在已经历史一个半月了。目前重构进度已经超过了 80%,超过6+位贡献者集体贡献。这绝对是个不小的工程了 那问题来了,我为什么要发起这个重构项目呢? 在重构项目之前,nerdctl 项目存在一个很大的问题,即 command 的入口处,flag 的处理和逻辑耦合的问题,比如用 nerdctl apparmor 系列的代码来举一个例子 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687package mainimport...
蓝莲花公益小组简报
愿每个人心里,都盛开着永不凋零的蓝莲花 从2021年11月第一次发起刷题公益计划,到现在也一年多时间了。起初是为了让大家有一些特殊的动力去刷题,所以有了这样的基础规则 1题一元人民币,在打卡后向公益基金捐款。 基金池最开始由群主承担,后续有超过25位+群友集体捐款 再后来,这个群就发展成了基于技术的各种闲聊群,推荐番毒害群友群。 到目前也差不多一年多时间了,写个简报回顾一下 一、刷题公益计划截至目前,从2021年11月开始,到2022年6月作为一个阶段的结束。 共计捐款 1625 元人民币 在2022年6月,经过群友同意,再经过一轮扩资后,蓝莲花小组向一个村小项目捐款 6000 元人民币 前不久得到反馈,这笔钱已经用在应该用的地方了。开心 二. 技术分享从2022年6月开始,群友决定在群内以一周两次的频率进行分享,截至目前举行了八次分享 SRE 二三事 当前端在讨论字体时,我们在讨论什么 编译原理入门到出家 OLAP 入门出家 简单聊聊家庭网络 Homelab 101 稳定性建设101 物联网简介 三....
排查一个特殊的 No space left on device
好久没写水文了,新年第一篇水文总得写一下,完成下 OKR,正好最近帮群友查了一个特殊的 No space left on device 问题,记录一下。 问题半夜接到群友求助,说自己的测试环境遇到了点问题,正好我还没睡,那就来看一下 问题的情况很简单, 用 docker run -d --env-file .oss_env --mount type=bind,src=/data1,dst=/cache {image} 启动了一个容器,然后发现在启动后业务代码报错,抛出 OSError: [Errno 28] No space left on device 的异常 这个问题其实很典型,但是最终排查出来的结果确实非典型的。不过排查思路其实应该是很典型的线上问题的一步步分析 root casue 的过程。希望能对看官就帮助 排查首先群友提供了第一个关键信息,空间有余量,但是就 OSError: [Errno 28] No space left on device 。那么熟悉 Linux 的同学可能第一步的排查工作就是排查对应的 inode...
Stay Simple, Stay Naive
本来想在农历年前交年终总结的,不过想了想,去年的年终总结就因为太懒导致我鸽了。所以这个“双年”怎么也得总结下2022了。不过说起来怎么还没去字节,就开始 ego 了起来。 开篇实际上每年都在觉得这一年很魔幻,但是下一年总会跳出来说“这一年更魔幻”。不过这也是人生的乐趣吧。 看了下20年总结的标题叫做”但行好事,莫问前程“,去年一下想不起标题,群内求助了下,发现”Stay Simple,Stay Naive“这个标题还不错,挺适合作为去年的总结与展望的。不过在写下这点文字的时候发现当年 +1S 的对象也已经仙去了。怎么说心里也还是有点很奇怪的感觉在里面。 不过,一日膜法,终身膜法,所以就还是 Naive 的 +1S 吧 生活去年从年初开始,我从太极图形离职后,就开始进入了我数字游民的生活。作为一个...
我所热爱的开源社区
今天是个不错的日子,最开始由我带进 nerdctl 社区的 @yuchanns 因为其很活跃的表现被项目的主要维护者 @AkihiroSuda 推荐成为了项目的 maintainer,参见 nerdctl#PR1540。而我也在这个项目中被提名成为 committer,参见 nerdctl#1539。加上今天的公益群有太多关于开源的讨论,所以我想写篇文章记录下我自己的经历,希望能帮助更多的人热爱开源,拥抱开源。 为什么我会参加开源我参与的第一个开源项目,应该是能追溯到16年,我还没有本科毕业的时候,当时的我参加了 稀土掘金翻译计划(slogan 里说的最好的英文技术资讯翻译项目,我觉得毫不夸张),在这个项目里我第一次接触到了 Git Workflow,也完整接触到了 GitHub 这个世界最大的同性交友社区(大雾(不过我相交至今对我帮助巨大的几位密友真的是通过这个项目结识的)。而我第一个参与的代码项目,应该可以追溯到17年3月,我给 Sanic 这个项目新增了一个 Code Example,参见...
重回 Windows 之路
最近会回到 Windows 下办公了两周多,简单记录下自己的使用体验 背景最近刚配置了一台高配的主机(i9-13900k+4090),之前的 MBP 沦为开会本,开始尝试把 PC 作为主力机使用,由于驱动太新没搞上合适的 Linux 发行版,Ubuntu 系动不动又在“Ubuntu 内部错误”,所以我开始使用 Windows 作为自己的工作生活主力机。两周使用下来发现 Windows 的使用体验还是超出我的预期了。下面大概聊聊 优点时隔多年主力使用 Windows,感觉进步还是蛮大的,主要体现在 系统交互上 开发者体验上 系统交互上,Windows 吸收了不少其余的系统和软件的精髓,感觉进步不小,写几个我印象里比较深的吧 开始菜单栏进行了改进,比之前感觉更好用了 File Explorer 的改进,比如支持 Tab 什么的,还是很舒服的 非常优秀的分屏功能,将窗口拖到屏幕上方就能选择不同的分屏比例和应用,同时在切换任务的时候,有 Task Group 的概念。这不比 macOS 高了不知道10个 Linux? 全局深色主题支持比之前好很多了 整体使用下来,体验比前面的...