二次元の技术宅 念念不忘,必有回响。

理解Yii2核心架构

Yii2是一个设计简单,灵活性高,容易上手的MVC框架。它的生态所有欠缺,所以很需要理解框架,然后DIY。很希望Yii3能早日发布。

使用Yii2也有了几年,在理解控制反转/IoC的概念之后,再结合框架yii\base\BaseObjectyii\base\Component的源码解读,对框架又有了更深清晰的认识。

又一年

记录生活。这是一篇碎碎念的文章,与技术无关。

我是一个挣扎前行的普通程序员。博客建站的时候我还在大学,现今正因年龄危机而焦虑。

西式言论自由脏了GitHub

我的GitHub账号被封了,他们认为我存在harass, abuse, threaten, or incite violence中的某些行为,有违Acceptable Use PoliciesCommunity Guidelines。工单申诉,平台也一直不处理。

其实是他们先在GitHub这个技术社区滥发误导、污蔑性质的政治信息,恬不知耻地称之为“言论自由”。然而你骂一声,他们立刻就玻璃心了,觉得自己“自由正义”的话语招来了侵害。

由于账号被封,我也只能另外想办法恢复博客了。

解决Archlinux上Navicat15因glib2不兼容报错问题

当前版本2022年8月2日Archlinux系统软件包支持原版navicat15运行,不需要额外打补丁。

当前navicat已经更新到16了,由于没有正版许可证Linux版注册机,因此一直停留在老版本15。由此引发的软件包不兼容问题越来越多。

习惯性地更新了Archlinux所有软件包,发现Navicat无法运行了。命令行运行报错如下:

symbol lookup error: /usr/lib/libgio-2.0.so.0: undefined symbol: g_module_open_full

网上查到libgio-2.0.so.0glib2包的文件,显然是版本不兼容了。考虑到AppImage本质上就是把各依赖库打包起来做成了便携应用,便考虑把老版本的glib2打包进应用镜像,结果完美解决。

Hugo主题NES

偶然发现了NES风格的样式库,并打算以此做个主题。目前只设计了主要页面。

Archlinux添加自签名证书到系统

Web本地开发时可能要用到自签名证书来进行https访问。

Datetime字段类型默认值问题

Data truncation: Incorrect datetime value: ‘0000-00-00 00:00:00’ for column.

简而言之,就是字段值不能是0000-00-00 00:00:00:00

以非root用户运行docker服务

某些场景下可能需要使用以非root用户来运行docker服务,以保证系统的安全性。 参考文章 Run the Docker daemon as a non-root user (Rootless mode)

云锁导致的Docker镜像拉取失败

上周遇到了MTU导致的Docker镜像拉取失败,这次又遇到了奇怪的情况导致镜像拉取失败。

因MTU导致的容器网络问题

将CI/CD服务前移到k8s后,当drone的插件drone-docker构建镜像时,总卡在更新软件包的步骤。是网络连接的问题,为了解决这个问题,耗费了我整个周末。

# apk update
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz