Agones 开发集群搭建完全指南:GKE、Minikube、Kind 与自定义测试环境
游戏开发云原生【免费下载链接】agonesDedicated Game Server Hosting and Scaling for Multiplayer Games on Kubernetes项目地址https://gitcode.com/gh_mirrors/ag/agones点击查看免费下载Agones 是一个基于 Kubernetes 的专用游戏服务器托管与扩缩容开源项目开发者在本地或云端搭建测试集群时需要一套与项目构建、镜像推送、安装和端到端测试流程深度绑定的集群环境。本篇技术指南以仓库中的 build/docs/cluster-setup.md 为核心骨架完整讲解在 Google Kubernetes EngineGKE、Minikube、Kind 以及自定义 Kubernetes 环境上搭建 Agones 开发/测试集群的完整流程并深入源码剖析背后每个 make 目标的实际执行逻辑。读完本文你将能够独立完成从创建集群、验证 kubectl、构建镜像、推送镜像、安装开发版 Agones 到运行端到端测试的整套开发闭环。一、总览Agones 开发集群与 Make 目标体系Agones 的开发流程围绕build目录下的 Make 体系展开。主入口是 build/Makefile它根据宿主机操作系统自动引入对应的平台配置文件并显式包含三个集群相关的 include 文件build/includes/google-cloud.mkGKE 集群相关目标build/includes/minikube.mkMinikube 集群相关目标build/includes/kind.mkKind 集群相关目标。同时build/Makefile 会通过-include ./local-includes/*.mk加载build/local-includes/下所有个人配置文件这些文件被 git 忽略用于永久覆盖变量或追加自定义目标详见后文。之所以区分这么多集群类型是因为 Agones 需要在真实 Kubernetes 环境中验证控制器、SDK sidecar、分配器allocator、Ping 服务等组件的完整工作流而 GKE、Minikube、Kind 在驱动方式、镜像分发、网络访问上差异巨大必须提供各自专属的 Make 目标。二、运行测试用 Google Kubernetes EngineGKE集群GKE 是 Agones 官方推荐、功能最完整的开发测试环境搭建流程也最长创建集群 → 认证 → 构建镜像 → 推送 → 安装 → 端到端测试。2.1 前置条件Google Cloud 项目与 gcloud 认证首先在 Google Cloud Console 创建一个新的 Google Cloud 项目或复用已有项目。Agones 的构建工具默认会把 gcloud 的配置维护在build文件夹内具体是build/.config/gcloud与开发者的全局配置隔离因此需要单独对项目做一次认证make gcloud-init该目标在 google-cloud.mk 中的实现是执行gcloud init按提示完成登录与项目选择即可。这种配置隔离的设计在 build/Makefile 的挂载参数中可见一斑构建容器会将build/.config/gcloud挂载到容器内/root/.config/gcloud确保所有 gcloud 操作都落在项目内。2.2 创建 GKE 测试集群认证完成后运行make gcloud-test-cluster该目标会使用 build/terraform/gke 目录下的 Terraform 配置创建集群。从 google-cloud.mk 的源码看gcloud-test-cluster先调用gcloud-terraform-cluster将一系列环境变量转换为 Terraform 变量最后执行terraform apply并在集群创建完成后自动调用gcloud-auth-cluster拉取 kubectl 凭证。如果你要跑端到端e2e测试则使用make gcloud-e2e-test-cluster端到端集群的 Terraform 配置位于 build/terraform/e2e且要求 GCP 项目下存在对应的 Terraform state bucket由ensure-e2e-infra-state-bucket自动创建见 google-cloud.mk。Terraform 配置 build/terraform/gke/module.tf 中有一处关键注释node_count是游戏服务器节点池的节点数Agones 模块会自动额外创建两个各含 1 个节点的节点池分别用于agones-system和agones-metrics。这意味着默认的 4 个游戏服务器节点最终会形成 6 个节点的集群其中 2 个节点专门承载 Agones 自身组件与监控组件。2.3 集群可定制参数你可以通过环境变量、make 命令行参数或写入local-includes目录详见 build/docs/building-testing.md永久设置这些参数。如果使用端到端测试集群记得在 Makefile 中将GCP_CLUSTER_NAME改为e2e-test-cluster。参数说明默认值GCP_CLUSTER_NAME集群名称test-clusterGCP_CLUSTER_ZONE或GCP_CLUSTER_LOCATION集群所在的 Google Compute Engine 区域zone/locationus-west1-cGCP_CLUSTER_NODEPOOL_AUTOSCALE是否在游戏服务器节点池上启用自动扩缩容falseGCP_CLUSTER_NODEPOOL_MIN_NODECOUNT启用自动扩缩容时的最小节点数1GCP_CLUSTER_NODEPOOL_MAX_NODECOUNT启用自动扩缩容时的最大节点数5GCP_CLUSTER_NODEPOOL_INITIALNODECOUNT集群创建的游戏服务器节点数4GCP_CLUSTER_NODEPOOL_MACHINETYPE节点使用的 Google Compute Engine 机型e2-standard-4GCP_CLUSTER_NODEPOOL_ENABLEIMAGESTREAMING是否为集群中的default节点池启用镜像流式加载trueGCP_CLUSTER_NODEPOOL_WINDOWSINITIALNODECOUNT集群创建的 Windows 节点数0GCP_CLUSTER_NODEPOOL_WINDOWSMACHINETYPEWindows 节点使用的机型e2-standard-4这些默认值在 google-cloud.mk 与 build/Makefile 中有完整对应定义并且 build/terraform/gke/module.tf 中每个 Terraform 变量都给出了相同的默认值三层定义保持一致。值得注意的是Agones 默认会对节点打开 7000-8000 端口的 UDP 防火墙规则用于游戏服务器之间的 UDP 通信——这是 Agones 专用游戏服务器GameServer对外提供 UDP 服务的基础网络前提。集群创建需要几分钟。完成后可在 Google Cloud Console 看到集群已运行。接着拉取 kubectl 认证信息make gcloud-auth-cluster该命令执行gcloud container clusters get-credentials生成的凭证默认写入~/.kube/config如果你想使用其他 kubeconfig 文件可在运行前设置KUBECONFIG环境变量覆盖build/Makefile 中KUBECONFIG ? ~/.kube/config。2.4 进入开发 Shell 验证 kubectl运行make shell进入开发容器。你会得到一个以 root 用户运行的 bash shell其中预装了 kubectl、helm、gcloud 等开发工具其挂载与执行逻辑见 build/Makefile。输入以下命令验证集群连通性kubectl get pods如果一切正常你会看到当前没有任何资源但没有报错。输入exit退出 shell即可进入构建、推送与安装阶段。2.5 配置镜像仓库并构建、推送镜像先设置REGISTRY环境变量指向你的新项目仓库。可以选择 Google Container Registry 或 Google Artifact Registry但必须显式设置。本指南以 Google Artifact Registry 为例区域选择us-docker.pkg.dev请按 Artifact Registry 官方文档先在项目中创建好仓库export REGISTRYus-docker.pkg.dev/YOUR-PROJECT-ID/YOUR-REGISTRY-NAME然后为这个 registry 重新构建镜像make build-imagesbuild-images会构建全部六个镜像controller、extensions、sdksidecar、ping、allocator 与 processor见 build/Makefile。从源码看镜像 tag 由$(REGISTRY)/agones-component:$(VERSION)拼装而成而VERSION默认是下个发布版本号 当前 commit 短 hashbuild/Makefile例如1.62.0-dev-abc1234。推送前还有一步为了让本地 docker 能直接执行普通的docker push而不是gcloud docker -- push需要先认证 registry获得写入本地 docker config 的短期令牌make gcloud-auth-docker其实现是执行gcloud auth print-access-token | docker login -u oauth2accesstoken --password-stdin https://us-docker.pkg.devgoogle-cloud.mk。随后一条命令推送所有镜像make pushpush目标会依次推送上述六个组件镜像并在多架构构建启用时通过docker buildx imagetools create合并 multi-arch manifestbuild/Makefile、build/Makefile。2.6 安装开发版 Agones 并运行端到端测试镜像推送完成后安装开发版本所有 imagePullPolicy 设置为总是拉取make install从 build/Makefile 的源码看make install本质上是对install/helm/agones/目录下的 Helm Chart 执行helm upgrade --install --rollback-on-failure --wait --timeout 10m --namespaceagones-system并传入当前VERSION、REGISTRY、拉取策略、feature gates 等参数。安装失败时目标会自动收集agones-system命名空间下的 helm release、pod、事件等调试信息。生成的安装 yaml 可以在build/.install.yaml查看。最后运行全部端到端测试耗时较长make test-e2etest-e2e会串行执行四个子目标test-e2e-integration主集成测试、test-e2e-failure控制器故障测试、test-e2e-ha-extensionsextensions 高可用测试和test-e2e-allocator-crash分配器 Pod 删除测试详见 build/Makefile。测试代码位于 test/e2e 目录属于普通的 Go 测试如果想在开发过程中单独运行某个测试可参考 build/docs/building-testing.md 中的go test -race -run ^TestCreateConnect$方式。测试结束、集群用完后的清理命令make clean-gcloud-test-cluster # 或 make clean-gcloud-e2e-test-clusterclean-gcloud-test-cluster实际执行terraform destroygoogle-cloud.mk而 e2e 版本会额外清理遗留的 PVC 卷。三、运行测试用 Minikube 集群Minikube 适合在本地开发机上快速起一个单节点或少量节点的 Kubernetes 集群Agones 专门为其提供了独立的 Make 目标族。3.1 创建 Minikube 集群首先按官方说明安装 Minikube。然后运行make minikube-test-cluster该目标会在名为agones的 Minikube profile 下启动一个 Kubernetes 集群并使用项目支持的 Kubernetes 版本minikube.mk 中固定为--kubernetes-version v1.35.6。由于 Minikube 运行在宿主机的虚拟化层上通常基于 Docker部分标准构建/开发 Make 目标需要替换为 Minikube 专属目标。如需进行多节点端到端测试可用MINIKUBE_NODES环境变量指定节点数推荐至少 2-3 个节点以保证 e2e 测试的完整覆盖make minikube-test-cluster MINIKUBE_NODES3MINIKUBE_NODES的默认值为1minikube.mk会被透传给minikube start --nodes。创建完成后Minikube 会自动将 kubectl 认证凭证写入~/.kube并把当前kubectl context切换到agones。3.2 开发 Shell 与镜像推送验证 kubectl 同样从开发 shell 开始但注意要使用 Minikube 专属的 shellmake minikube-shell在 shell 内执行kubectl get pods确认无资源且无报错然后exit退出。由于 Minikube 无法直接访问外部 registry 拉取你刚构建的本地镜像需要把镜像从本地 Docker 直接导入 Minikube 实例make minikube-push从 minikube.mk 的源码可以看到minikube-push使用minikube image load依次加载六个组件镜像再用minikube image tag将它们重新打上不带架构后缀的 tag这样 Helm Chart 中的镜像引用就能正确匹配。3.3 安装与端到端测试make minikube-install与 GKE 的make install不同minikube-install会以ALWAYS_PULL_SIDECARfalse、IMAGE_PULL_POLICYIfNotPresent调用make installminikube.mk因为镜像已在本地无需强制拉取。端到端测试make minikube-test-e2e⚠️ 注意Minikube 集群通常资源有限完整 e2e 套件很容易压垮本地集群建议按 build/docs/building-testing.md 逐个运行测试。如果遇到无法连接 Minikube 上GameServer的问题可以检查 Minikube 驱动必要时通过MINIKUBE_DRIVER变量更换驱动版本默认是docker见 minikube.mk并通过local-includes在开发机上永久保存该设置。四、运行测试用 Kind 集群KindKubernetes IN Docker将 Kubernetes 集群运行在 Docker 容器中是最轻量的本地集群方案默认集群名为agones。4.1 创建 Kind 集群首先按官方说明安装 Kind。然后运行make kind-test-cluster该目标会检查是否存在名为agones的集群不存在则执行kind create cluster --name agones --image kindest/node:v1.35.6 --wait 5mkind.mk。集群名可通过KIND_PROFILE环境变量修改默认agonesbuild/Makefile。该目标还会自动设置 helm 和 kubeconfig。kubeconfig 的位置可用以下命令查看假设使用默认KIND_PROFILEkind get kubeconfig --nameagones如果你安装了 kubectl可以用下面命令验证集群信息KUBECONFIG$(kind get kubeconfig-path --nameagones) kubectl cluster-info4.2 开发 Shell、镜像推送与安装make kind-shell进入开发 shell 后执行kubectl get pods验证连通性exit退出。由于 Kind 也运行在宿主机的 Docker 上镜像同样需要本地分发make kind-pushkind-push先用docker tag去除镜像 tag 的架构后缀再通过kind load docker-image将六个组件镜像加载进 Kind 集群kind.mk。安装开发版make kind-install运行端到端测试make kind-test-e2ekind-test-e2e复用与make test-e2e相同的测试逻辑同时为 Kind 集群准备所需的前置条件kind.mk。4.3 多节点 Kind 配置e2e 测试建议默认情况下Kind 只创建单个 control-plane 节点会受到 Kubernetes 单节点 Pod 数量上限的约束约 110 个 Pod。做 e2e 测试时建议额外创建 worker 节点以保证 Pod 容量。在自定义配置文件中声明节点kind: Cluster apiVersion: kind.x-k8s.io/v1alpha4 nodes: - role: control-plane - role: worker - role: worker然后用该配置创建集群kind create cluster --name agones --config your-config.yaml这能确保有足够的 Pod 容量运行 e2e 测试。需要说明的是这种手动方式创建的集群与make kind-test-cluster创建的集群在使用make kind-push/kind-install时兼容因为它们都指向名为agones的集群。此外kind.mk 还提供了kind-metallb-helm-install与kind-metallb-configure两个目标用于在 Kind 上安装并配置 MetalLB 负载均衡器这对需要在本地验证 LoadBalancer 类型服务如 ping 服务与 allocator 服务的场景很有帮助。五、运行自定义测试环境如果你使用的是自建的 Kubernetes 集群自建 K8s、其他云厂商、多集群环境等、自定义镜像仓库或者需要同时管理多个测试集群可以完全绕过上述平台专属目标直接用环境变量驱动通用的开发/测试循环。5.1 前置条件一个或多个运行中的 Kubernetes 集群准备好对应的 kubeconfig 文件docker 已登录你要使用的镜像仓库。5.2 需要设置的环境变量环境变量作用未设置时的行为KUBECONFIG指向访问集群所用的 kubeconfig 文件默认为~/.kube/configREGISTRY指向你的镜像仓库例如us-docker.pkg.dev/YOUR-PROJECT-ID/YOUR-REGISTRY-NAME默认为local见 build/MakefileIMAGE_PULL_SECRET使用自定义仓库时拉取 Agones 镜像所需 secret 的名称不设置则不使用 pull secretIMAGE_PULL_SECRET_FILE自定义镜像仓库场景下存放拉取 secret 的文件的完整路径设置后make install会将该 secret 同时安装到agones-system供控制器镜像拉取与default供 sdk 镜像拉取两个命名空间IMAGE_PULL_SECRET_FILE的安装逻辑在 build/Makefile 的install-custom-pull-secret目标中实现它会在agones-system命名空间和default命名空间分别执行kubectl apply并且该目标被make install声明为前置依赖。5.3 开发/测试循环配置好上述变量后即可进入标准的开发/测试周期make build # 构建 Agones编译代码 构建全部镜像 SDK make test # 运行本地测试含 site-test 目标 make push # 将 Agones 镜像推送到你的镜像仓库 make install # 在集群中安装/升级 Agones make test-e2e # 在集群中运行端到端测试需要清理集群中的 Agones 时make uninstalluninstall执行helm uninstall agones --namespaceagones-systembuild/Makefile。5.4 用 local-includes 固化个人配置如果希望永久设置上述变量而不必每次 export可以在 build/local-includes 目录下创建自己的.mk文件。例如只想构建 Linux 镜像的开发机可以创建images.mk# Just Linux WITH_WINDOWS0 WITH_ARM640所有build/local-includes/*.mk会被主 Makefile 自动引入且不进入 git 仓库build/Makefile是团队内多开发者个性化配置的推荐做法。六、进阶阅读与下一步搭建并验证集群、完成第一轮构建与测试后可以继续深入build/docs/development-workflow.md远程调试debug 镜像、端口转发与进阶开发模式build/docs/make-reference.md全部集群相关 make 目标的详细参考文档build/docs/building-testing.md构建、单元测试与端到端测试的完整工作流包括local-includes与单测运行方式。无论是云上的 GKE、本地的 Minikube还是轻量的 KindAgones 都通过统一且可参数化的 Make 目标将建集群 → 验 kubectl → 构镜像 → 推镜像 → 装组件 → 跑测试 → 清环境这条链路标准化。理解这些目标背后的实现build/includes/google-cloud.mk、build/includes/minikube.mk、build/includes/kind.mk 以及 build/terraform/gke/module.tf你就能根据自己的环境灵活组合出最适合的开发闭环。赞分享游戏开发云原生【免费下载链接】agonesDedicated Game Server Hosting and Scaling for Multiplayer Games on Kubernetes项目地址https://gitcode.com/gh_mirrors/ag/agones点击查看免费下载相关推荐Agones 本地开发环境搭建Minikube 集群创建与 GameServer 连接实战指南Agones 本地开发环境搭建Minikube 集群创建与 GameServer 连接实战指南 导读本文基于 Agones 官方文档完整讲解如何在本机用游戏开发云原生vue-notifications浏览器支持从IE到现代浏览器的兼容性指南vue notifications浏览器支持从IE到现代浏览器的兼容性指南 vue notifications是一款Vue.js通用非阻塞通知库帮助开发者轻KubeVirt 基于 kind 搭建 Kubernetes 1.37 开发测试集群kind-1.37 Provider 完整实战指南KubeVirt 基于 kind 搭建 Kubernetes 1.37 开发测试集群kind 1.37 Provider 完整实战指南 本文以仓库中 kind云原生创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

全网都在吹零样本,但有人实测 TimesFM 在分钟级金融信号上翻车——没人敢说的局限

全网都在吹零样本,但有人实测 TimesFM 在分钟级金融信号上翻车——没人敢说的局限

全网都在吹零样本,但有人实测 TimesFM 在分钟级金融信号上翻车——没人敢说的局限 【免费下载链接】timesfm-3.0-pytorch 项目地址: https://ai.gitcode.com/hf_mirrors/google/timesfm-3.0-pytorch "TimesFM 零样本预测媲美全监督模型""无需…

2026/10/10 5:57:45 阅读更多 →
C++关联容器选型:map与unordered_map底层原理、性能实测与避坑指南

C++关联容器选型:map与unordered_map底层原理、性能实测与避坑指南

关联容器作为C日常开发中使用频率极高的组件,map与unordered_map这对“双生子”经常被人拿来对比,但大多数文章只是简单罗列区别表,真正落到工程场景里如何选型、怎么避坑,却很少讲透。这篇博文就围绕这两个容器,从底层…

2026/10/10 5:56:45 阅读更多 →
LeetCode 2311 题解:贪心选后缀加前导零计数——最长二进制子序列不超过 k(灵茶山艾府题解精读)

LeetCode 2311 题解:贪心选后缀加前导零计数——最长二进制子序列不超过 k(灵茶山艾府题解精读)

科学计算 【免费下载链接】codeforces-go 算法竞赛模板库 by 灵茶山艾府 💭💡🎈 项目地址: https://gitcode.com/GitHub_Trending/co/codeforces-go 点击查看 免费下载 本篇技术指南围绕《LeetCode 第 298 场周赛》第 3 题「最长…

2026/10/10 5:56:45 阅读更多 →

最新新闻

nano代替vim:Linux新手与运维的终端编辑新选择

nano代替vim:Linux新手与运维的终端编辑新选择

1. 别再被vim劝退了:聊聊nano代替vim这件事先说说我自己的经历。刚接触Linux那会儿,我听到最多的一句话就是“你必须学会vim,因为你迟早要在终端里改配置”。于是我硬着头皮看了不少教程,记住了i进入插入模式、Esc退出、:wq保存&a…

2026/10/10 6:34:57 阅读更多 →
Flask + SQLAlchemy 实战:从数据模型到查询优化的完整指南

Flask + SQLAlchemy 实战:从数据模型到查询优化的完整指南

简介:面向优达学城全栈开发课程的Fyyur项目源码,主要服务于正在学习Flask与PostgreSQL数据建模的开发者。项目围绕音乐演出场地和艺术家预约网站展开,要求为现有视图与控制器补齐数据模型,实现对场所、艺术家及表演场次的创建、检…

2026/10/10 6:34:57 阅读更多 →
Exadata X9M数据库一体机全解读:从原理到落地的避坑指南

Exadata X9M数据库一体机全解读:从原理到落地的避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 6:34:57 阅读更多 →
Unity反编译实战:用dnSpy分析并修改游戏代码

Unity反编译实战:用dnSpy分析并修改游戏代码

简介:dnSpy是一款功能强大的.NET程序反编译与调试工具,专为Unity开发者、游戏引擎研究者及希望从现有软件中学习代码逻辑的技术人员准备。借助该工具,可直接打开并分析Unity项目生成的C#程序集(dll),还原类…

2026/10/10 6:34:57 阅读更多 →
Fyyur实战:Flask全栈项目从跑通到ORM进阶与避坑指南

Fyyur实战:Flask全栈项目从跑通到ORM进阶与避坑指南

简介:Fyyur-Udacity-Project是Udacity全栈开发课程中的音乐演出场地与艺术家预定网站项目,适合正在学习Flask、PostgreSQL和Web API设计的开发者。该项目已具备视图与控制器,但缺少数据模型和数据库交互能力,学习重点在于补全模型…

2026/10/10 6:34:57 阅读更多 →
Spring Boot+微信小程序高校共享图书借阅系统实战解析

Spring Boot+微信小程序高校共享图书借阅系统实战解析

去年帮某高校的一位学弟做毕设,对方只丢过来一句话:“想做一个高校共享图书借阅的小程序,后端用Spring Boot。”这句话听起来不难,但真正动手才发现,共享借阅这事儿背后藏着一整条业务链:用户身份认证、图书…

2026/10/10 6:33:57 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 5:23:50 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 6:17:20 阅读更多 →