在 macOS 上通过 SSH 将远程目录挂载到本地文件系统
sshfs 是一个通过普通的 SSH 协议将远程服务器上的目录挂载到本机的工具。在 macOS 上,可使用 macFUSE 和 SSHFS 实现。
测试已启用 HTTPS 但尚未配置域名的站点
在搭建好Web站点并配置了SSL证书后,由于某些原因,还不能将正式的域名指向该该站。比如正在进行服务器迁移,必须确保新服务器一切正常,并在特定的时间才能进行切换。此时,该如何测试站点除了域名之外,已经配置正确?最显而易见的方式,其实就是修改域名解析。既然无法修改公共的DNS记录,那么可以修改本地的 hosts 文件;除此之外,还可以使用 cURL 或者编程实现。
将 Linux 的 systemd 日志转发到 NewRelic
Linux 上的 systemd-journal-upload
服务可用于将 systemd 的日志发送到远程的日志服务器。这样便于将日志进行集中式的归档,搜索等;而将日志保存在远程服务器,在一定程度上也提高了安全性。但是 systemd-journal-upload
的目标日志服务器是 systemd-journal-remote
服务。在云服务器大行其道的今日,搭建和使用 systemd-journal-remote
有一些老派了。时髦的做法,是将日志发送到云服务器,这样在浏览器里可以查看和全文检索。
NewRelic 是一个 SaaS 服务器,它的 Infrastruct Agent 可用于收集系统指标、日志等。对其进行简单配置,即可将 systemd 的日志,发送到 NewRelic。
Pulumi 实战:引用没有被 Pulumi 管理的资源
Pulumi 是一款 “基础设施即代码”(Infrastructure as Code, IaC)工具,它允许用户使用代码来定义云资源,进而以声明式(Declarative)的方式管理亚马逊云科技(AWS)、微软 Azure、谷歌云平台(GCP)等云服务上的各类资源。尽管 IaC 是时髦的工程实践,但如果“不幸地”工作在遗留项目中,那么在使用 Pulumi 管理资源时,可能需要引用一些手动创建(或者以其他工具创建)的资源。幸运的是,Pulumi 的 Get 函数可用于引用那些不被 Pulumi 管理的资源。
使用 NodeMCU 和 Tasmota 在 OLED 液晶屏幕上显示文本
Tasmota Display 是一个用于支持外部显示屏的 ESP 固件,支持 OLED、TFT 等显示屏。在完成基本设置后,发送命令给 Tasmota,即可在显示屏上显示自定义的文本等。本文以 SSD1306 OLED 显示屏为例,介绍搭建这套环境的简单步骤。
在 Windows 上运行 docker 出错:no matching manifest for linux/amd64 10.0.22621 in the manifest list entries
在 Windows 上拉取或者运行 Linux 容器时候,可能会遇到如下错误。比如
> docker pull python:3.12-slim
no matching manifest for linux/amd64 10.0.22621 in the manifest list entries
这是因为 Docker 在尝试拉取 Windows 镜像,因此找不到镜像。
使用ESP32-CAM开发版和Tasmota搭建网络摄像头
ESP32-CAM摄像头开发板是安信可(Ai-Thinker)发布的小尺寸的摄像头模组,而 Tasmota 的 ESP32 WebCam 固件对其进行了适配。结合二者,可以搭建一个简单的网络摄像头,通过浏览器访问。
Kubernetes实战:Deployment 如何选择 Pod
在使用 Kubernetes 部署应用时,通常会创建 Deployment,在其中定义 Pod 的模板、 副本数量、更新策略等关键信息。一般来说,Deployment 中的匹配标签(即 spec.selector.matchLabels
)定义了用于选择 Pod 的标签,当 Deployment 执行诸如扩缩容、更新操作时,就依靠这些标签匹配去找到对应的 Pod。而 Pod 模板元数据中的标签(即 spec.template.metadata.labels
)应该与 Deployment 的匹配标签保持一致。今天我在项目中发现,两个不同的 Deployment 居然使用了相同的匹配标签。于是很疑惑,难道两个 Deployment 不会互相干扰吗?经过一般调研,原来不只我有过这样的困惑。
使用 NodeMCU 和 Tasmota 控制 LED 灯的亮度
PWM 是 Pulse Width Modulation 的缩写,中文叫脉冲宽度调制,指的是通过改变脉冲信号的宽度来调控输出。它能灵活调节电子设备的功率,比如是精准控制电机转速、LED 灯亮度。ESP8266 不支持硬件脉宽调制(PWM),不过,所有数字引脚均支持软件脉宽调制。而 Tasmota 支持将 GPIO 口设置为 PWM,再利用 PWM 控制器,就能灵活控制 LED 灯的亮度。
使用 Mosquitto 搭建 MQTT 消息代理(服务器)
物联网设备通常使用基于发布/订阅模式的 MQTT 协议进行数据传输,Mosquitto 是一个实现了 MQTT 协议(5.0、3.1.1和3.1版本)的消息代理。本文介绍 Mosquitto 的安装配置。