Skip to content

归档

一份源于一线开发的 Golang 工程实践笔记。按时间归档本站所有技术文章,涵盖 Golang、Kubernetes、Linux、CI/CD、安全等方向,方便查阅历史文章。

2026

2025

  • Golang 结构体标签

    在 Golang 中,通过合理的使用结构体标签可以起到附加语言特性的相关处理,通过 json:",string" 可以在编码或解码时将数字转为字符串;通过 json:",omitempty" 当字段值为零值时可以在编码之后忽略该字段,在 json 数据中你压根就看到到该字段,它好像没有来过一样!

  • 解决 Docker Desktop 获取节点状态时 Unable to connect to the server: EOF

    在 macOS 环境使用 Docker 开启单节点 Kubernetes 环境时,通过 kubectl 获取节点状态时响应 Unable to connect to the server: EOF 咦!Docker Desktop 显示 Kubernetes 服务已正在启动没有任何问题,就是通过终端 kubectl 与 kube-apiserver 无法交互!

  • 解决 Gin 框架中数字字符串数组到 int64 切片的绑定问题

    在实际开发中,我们经常会遇到客户端传递字符串格式的数字数组,而服务端需要将其绑定到 int64 类型切片的情况。本文将详细介绍如何使用 Gin 框架优雅地解决这个问题。

  • 深入理解 GORM 中指针类型字段的可控性

    在 Golang 中定义数据模型结构体字段时可以通过类型指针来控制字段在数据非零值,例如,定义一个布尔指针类型的 IsCompleted 字段,在更新时可以通过指定一个 *false 指针即可正常的将原有的 true 值,修改为 false,当然指定 gorm 字段定义时您可以指定为 gorm:tinyint(1),但是,如果您指定的是布尔类型,通过指定指定字段值为 false 将,无法进行更新,这是因为 gorm 会将所有的类型零值视为该字段未更新所以也就无法从 false 修改为 true, 必须将其指定为布尔指针。

  • MacOS 系统 Ventura 版本通过触发角锁定屏幕

    在 Windows 系统中可以通过 Win + L 快捷键进行快速的锁屏操作, 当然在 macOS 系统中也可以通过 ⌃ Control + ⌘ Command + Q 进行快速锁屏,不过,MacOS 系统有更好的操作方式来实现这个锁屏需求,但是,在 MacOS 系统 Ventura 版本触发角的设置真是不太好找!

  • VitePress 项目 GitHub Actions 自动化 CI/CD 实践

    将 Nuxt.js CI/CD 实践思想迁移到 VitePress 文档项目。涵盖构建输出路径调整、验证文件变更、Nginx 重载服务、npm ci 优化,实现文档站点的自动化构建、部署与通知。

如果你觉得这个博客对您有帮助,或者想聊聊技术、工作,欢迎通过下面方式联系我:
contact fishfinal