Levon's Blog

微信: L6241425

Docker Compose 将多容器应用的配置集中到一份 YAML 文件中,通过 docker compose up/down 一键创建或销毁整个运行环境,确保团队成员在相同配置下获得一致的开发、测试体验。

阅读全文 »

Docker 网络是容器通信的基础设施层。六个场景串联核心知识:单容器上网、两容器互通、多服务隔离、跨主机通信,直到特殊需求与生产排障。

阅读全文 »

Docker 三种数据挂载方式(Named Volume、Bind Mount、tmpfs)的原理、选型策略与生产避坑指南。

阅读全文 »

Dockerfile 是一个纯文本文件,用声明式的指令定义镜像的构建过程。每条指令对应镜像的一层(layer),最终叠加形成完整镜像。

阅读全文 »

1. 核心概念

Docker 体系围绕三个核心对象展开:镜像(Image)、容器(Container)、仓库(Repository)。

阅读全文 »

1. 核心概念

1.1 什么是跨域

你一定见过这个报错:

1
2
Access to XMLHttpRequest at 'https://api.com/data'
from origin 'https://app.com' has been blocked by CORS policy

Postman 能调通,浏览器就不行——问题不在接口,而在浏览器的同源策略(Same-Origin Policy, SOP)。

跨域指的是:网页脚本试图访问与自身协议(scheme)、域名(host)、端口(port)任一不同的资源时,浏览器对这次访问施加的限制。

请求已经发出去了,服务端也已经处理并返回了响应。浏览器拦截的是响应——它不让 JS 读取返回的数据。

类比理解:你住在封闭小区,保安(浏览器)规定只有本小区(同源)的快递可以签收。外面的快递员(跨域请求)想送货进来,必须由物业(服务端)提前开好通行证(CORS 响应头),保安验证通过才放行。

阅读全文 »

1. 什么是 CRDT

1.1 核心定义

CRDT(Conflict-free Replicated Data Type,无冲突复制数据类型)是一种数据结构,允许多个副本独立、并发修改,无需中央协调即可自动合并到一致状态。

它围绕一个核心问题展开:多副本之间如何高效、正确地传播和合并变更?

阅读全文 »

MacBook 作为本地开发服务器或家庭服务器时,需要解决两个核心问题:防止系统休眠和远程访问。

1. 防止系统休眠

MacBook 默认在空闲时进入睡眠状态,这会中断服务运行。以下是两种解决方案:

1.1 系统设置

「系统设置 → 电池 → 选项」:开启当显示器关闭时,防止 Mac 自动进入睡眠。

1.2 Amphetamine(推荐)

Amphetamine 是一款 App Store 免费工具,提供更灵活的控制:

  1. 关闭「显示器关闭允许系统睡眠」选项
  2. 开启「无限期会话」
  3. 最好开一个触发器:接通电源后,永远不休眠
阅读全文 »

Claude Agent SDK 是 Claude Code 的可编程库,支持 Python 和 TypeScript。本文演示 query() 和 ClaudeSDKClient 两种使用方式。

阅读全文 »

1. Armbian 简介

Armbian 不是独立的 Linux 发行版,而是基于 Debian/Ubuntu 构建的镜像框架,为 ARM 开发板提供优化的内核和设备树支持。

为什么不直接刷 Ubuntu?RK3566 等 ARM 盒子没有 PC 的标准启动方式(UEFI/ACPI),启动依赖 U-Boot + 设备树/驱动。通用 Ubuntu Server ARM64 镜像缺乏底层适配,直接写盘大概率无法启动或缺少网卡/USB 驱动。

Armbian 提供 Ubuntu flavor(Noble/Jammy 等),用户态是 Ubuntu apt 生态,底层由 Armbian 负责适配。若目标是稳定运行 Docker,推荐 Debian 12。

启动方式对比:

  • TF 卡启动:系统在 TF 卡上,不能拔出
  • eMMC 启动:系统在内置 eMMC,TF 卡可拔出(插 TF 优先从 TF 启动)
阅读全文 »
0%