从Linux内核到Docker实践:深入解析容器化核心技术与部署指南
1. 项目概述从虚拟化到容器化的演进之路聊到Linux服务器运维和现代应用部署你肯定绕不开“容器化”这个词。但很多人一上来就直奔Docker命令结果遇到“未检测到虚拟化支持”这类报错就懵了或者压根没搞懂容器和虚拟机的根本区别。今天我就以一个踩过无数坑的运维老兵身份带你彻底捋清Linux容器化技术的来龙去脉。这不仅仅是学几个命令而是理解从虚拟化到容器化这场技术范式转移背后的核心逻辑。无论你是刚接触Linux的新手还是想深化理解的开发者搞懂这些底层原理能让你在部署、排错和架构选型时心里更有底避免被各种营销概念牵着鼻子走。简单来说我们常说的“容器化”其基石是Linux内核本身提供的一系列资源隔离与限制机制如Namespace和Cgroups而Docker等工具则是让这些机制变得极其易用的“包装工”。要理解容器必须先理解它和传统虚拟化比如VMware、VirtualBox的根本不同。虚拟化是在物理硬件之上通过一个叫“Hypervisor”的中间层模拟出完整的虚拟硬件CPU、内存、磁盘、网卡然后在上面安装一个完整的操作系统。这相当于在房子里物理机用厚墙隔出几个独立的套房虚拟机每个套房都有自己的水电系统操作系统内核。好处是隔离彻底但缺点是笨重、启动慢、资源开销大。而容器化走的是另一条路。它直接利用宿主机的Linux内核通过内核特性为进程套上一个“轻量级的隔离环境”。这个环境有自己的文件系统、网络、进程树等视图但内核是共享的。这就像在同一套房子里用轻质隔断做出几个独立的房间容器大家共享主体结构和总水电入口内核但各自有独立的装修和私密空间。因此容器启动是秒级的资源消耗极小密度可以做得非常高。理解这个“共享内核”的核心是解开所有容器技术奥秘的钥匙也是解决“虚拟化支持”这类问题的起点。2. 核心基石Linux内核的隔离与约束机制容器不是凭空变出来的魔法它的能力根植于Linux内核。如果你只学Docker命令而不懂这些底层机制就像只会开车不懂发动机原理一旦抛锚就束手无策。容器技术的两大支柱是Namespace命名空间和Cgroups控制组。2.1 Namespace制造“视觉隔离”的障眼法Namespace的作用是为系统资源提供一种“隔离视图”让进程觉得自己独占了一套资源。Linux内核主要提供了以下几种NamespacePID Namespace隔离进程ID。容器内的第一个进程可以认为自己就是PID 1类似宿主机的init或systemd进程它看不到宿主机上的其他进程。Network Namespace隔离网络设备、IP地址、端口、路由表等。每个容器可以有自己独立的虚拟网卡和lo回环设备。Mount Namespace隔离文件系统挂载点。容器内对文件系统的挂载/卸载操作不会影响到宿主机。UTS Namespace隔离主机名和域名。允许容器拥有独立的主机名。IPC Namespace隔离进程间通信资源如信号量、消息队列和共享内存。User Namespace隔离用户和用户组ID。这是实现“rootless容器”非root用户运行容器的关键容器内的root用户可以被映射到宿主机的一个非特权用户。你可以通过一个简单的命令感受Namespaceunshare --pid --fork --mount-proc /bin/bash。这个命令会创建一个新的PID和Mount Namespace并启动一个bash。在新bash里执行ps aux你会发现进程列表变得非常短好像进入了一个“新系统”。这就是Namespace制造的“视觉隔离”。Docker在创建容器时会为它配置一套完整的Namespace。注意Namespace主要提供的是“视图隔离”而非绝对的“安全隔离”。在默认配置下拥有容器内root权限的用户如果配合某些内核漏洞或不当的挂载配置仍有可能对宿主机造成影响。因此在生产环境中绝不能将容器等同于虚拟机级别的安全边界。2.2 Cgroups为进程戴上“资源紧箍咒”如果说Namespace是“障眼法”那Cgroups就是“实打实的限制”。它用于限制、记录和隔离进程组所使用的物理资源比如CPU、内存、磁盘I/O和网络带宽。CPU控制可以设置进程的CPU使用份额cpu.shares、绑定到特定的CPU核心cpuset.cpus或者限制CPU使用时间周期cpu.cfs_period_us和cpu.cfs_quota_us后者是实现“此容器最多使用1个核心”的精确手段。内存控制可以设置内存使用硬限制memory.limit_in_bytes超过此限制的进程会被OOM Killer终止。还可以设置内存Swap的限制以及设置软限制和触发警告。Blkio控制限制块设备磁盘的I/O带宽可以为不同的设备设置读写速率上限。Pids控制限制一个Cgroup内可以创建的最大进程数量防止fork炸弹。在/sys/fs/cgroup/目录下你可以看到以资源类型命名的子目录里面包含了各种可配置的文件。Docker在运行容器时会自动在对应的Cgroup目录下如/sys/fs/cgroup/memory/docker/容器ID/创建子目录并写入限制参数。你可以通过docker run的-m、-cpus等参数来设置这些限制。实操心得很多线上故障源于Cgroups配置不当。比如只限制了内存memory.limit_in_bytes但没设置memory.memsw.limit_in_bytes内存Swap当内存不足时进程会疯狂使用Swap导致磁盘IO飙升整个节点响应变慢。一个最佳实践是同时设置内存和内存Swap的限制且两者值最好相同以完全禁用容器使用Swap保证性能可预测。3. Docker容器生态的引爆者与标准实践理解了底层机制再看Docker就豁然开朗了。Docker的本质是一个客户端-服务器架构的应用它通过一个守护进程dockerd调用Linux内核的Namespace和Cgroups等API来创建和管理容器。同时它定义了一套非常成功的镜像打包和分发标准这是它成功的关键。3.1 Docker核心概念与架构解析Docker镜像Image一个只读的模板包含了运行应用所需的文件系统、依赖和配置。它采用分层存储结构每一层是文件系统的一组差分变更。这种设计使得镜像复用率极高拉取和传输非常高效。Docker容器Container镜像的一个运行实例。容器在镜像的只读层之上创建一个可写的“容器层”所有运行时修改都发生在此层。容器停止后可写层默认保留除非用docker rm删除容器。Docker仓库Registry集中存放镜像的地方。最著名的是Docker Hub你也可以搭建私有仓库如Harbor。Dockerfile一个文本文件包含了一系列指令用于自动化构建镜像。FROM指定基础镜像RUN执行命令COPY添加文件CMD定义默认启动命令。Docker守护进程启动后会创建一个名为docker0的虚拟网桥并为每个容器创建一对veth pair虚拟网卡设备一端放在容器内通常是eth0另一端连接到docker0网桥。这样所有容器默认就在同一个二层网络可以通过IP互相通信。宿主机通过iptables规则做NAT让容器可以访问外网。3.2 从安装到运行避坑实操指南很多人尤其是在Windows家庭版或某些旧电脑上第一步安装Docker Desktop就卡住了报错“未检测到虚拟化支持”或“WSL2无法启动因为未启用虚拟化”。这里详细拆解一下对于Linux系统如Ubuntu/CentOS 安装最直接。以Ubuntu为例卸载旧版本、添加Docker官方GPG密钥和仓库源然后apt install docker-ce即可。安装后记得将你的用户加入docker组sudo usermod -aG docker $USER这样就不用每次都sudo了。但务必注意这等同于给了该用户root权限因为Docker守护进程以root运行。仅限可信的个人开发环境。对于Windows/macOS 情况复杂些。Docker Desktop在这两个系统上本质是在一个轻量级Linux虚拟机Windows上用WSL2或Hyper-VmacOS上用HyperKit中运行Docker守护进程。所以系统虚拟化支持是必须的。Windows 10/11 专业版/企业版/教育版通常需要在BIOS/UEFI中开启Intel VT-x或AMD-V虚拟化支持。然后在“启用或关闭Windows功能”中确保“Hyper-V”和“Windows虚拟机监控平台”已勾选。Docker Desktop默认会使用WSL2后端性能更好你需要先安装WSL2内核更新包并设置默认版本为WSL2。Windows 10/11 家庭版这是坑最多的地方。家庭版不支持Hyper-V。你需要先安装WSL2家庭版支持然后Docker Desktop可以配置为使用WSL2后端。但前提依然是BIOS中必须开启CPU虚拟化支持。如果还报错可能需要检查Windows功能中“虚拟机平台”是否已启用。macOS较新的Intel芯片Mac需要在“系统偏好设置-安全性与隐私-通用”中允许虚拟化软件。Apple SiliconM1/M2等Mac则直接使用原生虚拟化支持安装过程通常很顺畅。安装后验证运行docker run hello-world。这个命令会从Docker Hub拉取一个极小的测试镜像并运行。如果看到欢迎信息说明安装成功。这个命令背后发生了1. 本地查找hello-world:latest镜像2. 未找到从Docker Hub拉取3. 创建容器并运行4. 输出信息后容器退出。3.3 Dockerfile编写最佳实践与镜像优化镜像是容器的根本一个糟糕的Dockerfile会带来臃肿的镜像、安全漏洞和构建缓慢。以下是我总结的几条铁律使用明确的基础镜像标签永远不要用latest。用python:3.9-slim而不是python:latest或python:3.9。slim版本基于更小的Debian或Alpine能极大减少镜像体积和潜在漏洞。合并RUN指令清理缓存每一条RUN指令都会在镜像中创建一个新层。应该将相关的命令合并并在最后清理包管理器的缓存。# 差 RUN apt-get update RUN apt-get install -y package1 RUN apt-get install -y package2 RUN rm -rf /var/lib/apt/lists/* # 好 RUN apt-get update apt-get install -y \ package1 \ package2 \ rm -rf /var/lib/apt/lists/*合理利用.dockerignore文件像.gitignore一样排除构建上下文你运行docker build的目录中不需要的文件避免它们被发送到Docker守护进程加速构建并防止敏感信息泄露。一个容器只做一件事这是微服务架构的核心思想。不要在一个容器里运行MySQL、Redis和你的应用。这违背了隔离性原则也让镜像变得复杂难维护。非root用户运行进程在Dockerfile中创建非root用户并用USER指令切换。这能提升容器运行时的安全性。RUN groupadd -r appuser useradd -r -g appuser appuser USER appuser多阶段构建这是减少生产镜像体积的杀手锏。在第一阶段构建阶段使用包含完整编译工具的大镜像编译你的应用在第二阶段运行阶段使用一个极小的基础镜像只从第一阶段复制编译好的二进制文件。# 第一阶段构建 FROM golang:1.19 AS builder WORKDIR /app COPY . . RUN CGO_ENABLED0 GOOSlinux go build -o myapp . # 第二阶段运行 FROM alpine:latest RUN apk --no-cache add ca-certificates WORKDIR /root/ COPY --frombuilder /app/myapp . CMD [./myapp]这样最终的镜像只包含Alpine和你的二进制文件可能只有十几MB而构建镜像可能有几百MB。4. 容器网络与存储打通任督二脉容器光自己能运行还不够还需要与外界通信、持久化数据。4.1 容器网络模型深度解析Docker提供了几种网络模式通过--network参数指定bridge默认前面提到的docker0网桥模式。容器分配私有IP通过NAT与外界通信。容器间通过IP互通。这是最常用的开发模式。host容器直接使用宿主机的网络命名空间没有独立的IP直接使用宿主机IP和端口。性能最好但端口冲突风险高。none不给容器配置任何网络只有一个lo回环接口。用于需要完全自定义网络或极端安全场景。container:新容器共享指定容器的网络命名空间两者网络视图完全一样可以通过localhost直接通信。对于复杂的多容器应用比如一个Web应用需要连接数据库和Redis使用Docker Compose是更优雅的方式。Compose会为整个项目创建一个独立的网桥网络项目内的所有服务容器默认都加入这个网络并且可以通过服务名service name直接进行DNS解析这比记IP地址方便可靠得多。实操心得在Linux生产环境如果宿主机网络比较简单host模式性能优势明显。但如果宿主机跑了多个需要同一端口如80的服务或者需要精细的网络策略就需要更复杂的网络方案如Calico、Flannel等CNI插件这通常是Kubernetes集群的范畴了。4.2 数据持久化卷与绑定挂载容器文件系统的可写层是临时的容器删除数据就没了。持久化数据主要靠两种方式卷Volumes由Docker管理存储在宿主机文件系统的一部分通常是/var/lib/docker/volumes/与容器的生命周期解耦。这是最佳实践。创建并使用卷docker run -v mydata:/app/data ...。如果mydata卷不存在Docker会自动创建。优点易于备份、迁移可以通过Docker CLI或API管理是跨容器共享数据的推荐方式。绑定挂载Bind Mounts将宿主机上的一个特定目录或文件直接挂载到容器中。用法docker run -v /host/path:/container/path ...。场景适用于开发环境将宿主机的源代码目录挂载到容器实现代码修改实时生效。也用于挂载宿主机系统文件如/etc/localtime同步时间。注意绑定挂载会覆盖容器镜像中的原有目录内容且对宿主机目录有完全的访问权限需谨慎使用。重要原则永远不要将应用数据写入容器的可写层。务必使用卷或绑定挂载来存储数据库文件、上传内容、日志等任何需要持久化的数据。5. 生产环境进阶编排、安全与监控单容器跑起来只是第一步。在生产环境我们需要考虑多容器编排、安全加固和运行监控。5.1 容器编排初探从Compose到Kubernetes当你的应用由几十个甚至上百个容器组成时手动管理就是噩梦。你需要容器编排工具。Docker Compose适用于单机多容器应用的编排。用一个docker-compose.yml文件定义所有服务、网络、卷。docker-compose up一键启动整个应用栈。它是开发、测试和小型单机部署的利器。Kubernetes (K8s)容器编排的事实标准。它管理的是一个集群可以跨多台宿主机调度、部署、扩展和管理容器化应用。它提供了服务发现、负载均衡、自愈、滚动更新、密钥配置管理等强大功能。学习曲线陡峭但它是云原生时代的必备技能。你可以从Minikube或Kind这样的工具开始在本地学习K8s。5.2 容器安全加固要点容器安全是一个庞大话题但可以从以下几个基础点做起使用可信的基础镜像优先选择官方镜像并定期扫描镜像中的漏洞使用docker scan或Trivy等工具。非root用户运行如前文Dockerfile最佳实践所述。限制容器能力默认情况下容器拥有大量Linux能力Capabilities。使用--cap-drop删除不必要的用--cap-add添加必需的。例如一个Web应用通常不需要SYS_ADMIN能力。docker run --cap-drop ALL --cap-add NET_BIND_SERVICE my-web-app设置资源限制务必使用-m,--cpus等参数限制容器的资源使用防止单个容器耗尽宿主机资源导致“雪崩”。避免使用--privileged模式这会让容器拥有几乎所有的宿主机能力极其危险。敏感信息管理不要将密码、API密钥等硬编码在镜像或环境变量中。使用Docker SecretsSwarm模式或Kubernetes Secrets或者挂载外部配置文件。5.3 常见问题与排查技巧实录这里汇总几个最常遇到的头疼问题问题1docker: Error response from daemon: Ports are not available: listen tcp 0.0.0.0:8080: bind: address already in use.原因宿主机8080端口已被其他进程占用。排查sudo netstat -tulpn | grep :8080或sudo lsof -i :8080查看占用进程。停止该进程或为Docker容器映射另一个端口-p 8081:8080。问题2容器内应用日志量巨大占满磁盘。解决配置日志驱动和轮转在/etc/docker/daemon.json中配置。{ log-driver: json-file, log-opts: { max-size: 10m, max-file: 3 } }对于重要应用建议将日志通过stdout和stderr输出然后由Docker收集再使用Fluentd、Logstash等工具转发到Elasticsearch等中心化日志系统而不是留在本地。问题3容器时间与宿主机时间不一致。解决启动容器时挂载宿主机的时区文件。docker run -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro ...或者在Dockerfile中设置时区环境变量ENV TZAsia/Shanghai对于基于Debian/Alpine的镜像有效。问题4docker pull或docker build速度极慢。解决配置国内镜像加速器。修改/etc/docker/daemon.jsonLinux或Docker Desktop设置。{ registry-mirrors: [ https://registry.docker-cn.com, https://hub-mirror.c.163.com, https://mirror.baidubce.com ] }修改后重启Docker服务。问题5容器莫名退出如何查看原因排查docker logs 容器ID查看应用日志。docker inspect 容器ID查看详细配置和状态关注State字段ExitCode,Error,FinishedAt。如果容器是OOM内存溢出被杀可以检查宿主机内核日志dmesg | grep -i kill或者查看容器的Cgroup内存统计信息。容器化技术尤其是Docker已经彻底改变了软件构建、分发和运行的方式。它带来的轻量、快速、一致的环境是DevOps和云原生不可或缺的一环。但记住工具越强大理解其原理就越重要。从Linux内核的Namespace/Cgroups到Docker的镜像、容器、网络、存储再到生产环境的编排与安全这是一条环环相扣的知识链。我个人的体会是初期多动手实践从docker run hello-world开始逐步构建自己的应用镜像用Compose编排简单服务。遇到问题别急着搜答案先自己用docker logs、docker inspect、ps、netstat这些基础命令去探查这个过程最能加深理解。当你对单个容器了如指掌后再去挑战Kubernetes这样的分布式编排系统就会发现很多概念一脉相承学习起来事半功倍。最后安全无小事从编写Dockerfile的第一行开始就要把最小权限、非root用户、资源限制这些原则刻在脑子里。

相关新闻

5分钟掌握B站视频字幕提取:BiliBiliCCSubtitle终极使用指南

5分钟掌握B站视频字幕提取:BiliBiliCCSubtitle终极使用指南

5分钟掌握B站视频字幕提取:BiliBiliCCSubtitle终极使用指南 【免费下载链接】BiliBiliCCSubtitle 一个用于下载B站(哔哩哔哩)CC字幕及转换的工具; 项目地址: https://gitcode.com/gh_mirrors/bi/BiliBiliCCSubtitle 还在为B站视频的字幕提取而烦恼吗&#xf…

2026/10/17 8:36:13 阅读更多 →
GitHub加速插件终极教程:5个简单步骤让下载速度飙升500%

GitHub加速插件终极教程:5个简单步骤让下载速度飙升500%

GitHub加速插件终极教程:5个简单步骤让下载速度飙升500% 【免费下载链接】Fast-GitHub 国内Github下载很慢,用上了这个插件后,下载速度嗖嗖嗖的~! 项目地址: https://gitcode.com/gh_mirrors/fa/Fast-GitHub 你是否曾经在下…

2026/10/17 8:37:49 阅读更多 →
GetQzonehistory:如何一键备份你的QQ空间历史说说完整指南

GetQzonehistory:如何一键备份你的QQ空间历史说说完整指南

GetQzonehistory:如何一键备份你的QQ空间历史说说完整指南 【免费下载链接】GetQzonehistory 获取QQ空间发布的历史说说 项目地址: https://gitcode.com/GitHub_Trending/ge/GetQzonehistory 你是否担心多年积累的QQ空间说说会随着时间流逝而消失&#xff1f…

2026/10/17 8:38:12 阅读更多 →

最新新闻

InternVL3.5-2B-Pretrained生产级部署实战:LMDeploy与vLLM多模态推理加速全解析

InternVL3.5-2B-Pretrained生产级部署实战:LMDeploy与vLLM多模态推理加速全解析

【免费下载链接】InternVL3_5-2B-Pretrained 项目地址: https://ai.gitcode.com/OpenGVLab/InternVL3_5-2B-Pretrained 点击查看 免费下载 InternVL3.5-2B-Pretrained 是 InternVL3.5 开源多模态大模型系列的预训练基座模型,总参数约 2.3B(0…

2026/10/18 3:30:17 阅读更多 →
高德地图JS API设备图标设置:自定义、性能优化与交互实战

高德地图JS API设备图标设置:自定义、性能优化与交互实战

1. 项目背景与核心需求拆解设备图标在地图上的展示,看起来只是“换个图”这么简单,但真正落到项目里,涉及的问题远比想象中多。我做过好几个物联网监控和车辆调度类的项目,每次到地图展示这一环,团队里总会有人问&…

2026/10/18 3:30:17 阅读更多 →
Unity MatchTarget与IK动画融合实战:角色精确交互与导播视角适配

Unity MatchTarget与IK动画融合实战:角色精确交互与导播视角适配

1. 从一次角色脚底打滑说起:为什么需要MatchTarget做3D动作类项目的人多半遇到过这种场景:角色从待机切到翻越动作,动画本身很漂亮,但脚踩在箱子边缘时要么悬空、要么陷进去,手抓栏杆的位置也总是差那么几厘米。美术在…

2026/10/18 3:30:17 阅读更多 →
源码语料预处理指南:从杂乱仓库到AI高质量语料库

源码语料预处理指南:从杂乱仓库到AI高质量语料库

上个月接到一个任务:把一套多年没维护的老系统全部源码整理成AI能读懂的语料库。打开仓库一看,近万个源文件铺了满满一层。旧的业务模块、测试脚本、自动生成的临时文件、还有十几份“最终版”“最终版2”的副本,什么都有。我花了大半天做了一…

2026/10/18 3:30:17 阅读更多 →
Java游戏开发中的矩形碰撞检测原理与实战优化

Java游戏开发中的矩形碰撞检测原理与实战优化

1. 项目概述:为什么矩形碰撞检测是Java游戏开发的“呼吸感”基础在Java游戏开发中,矩形碰撞检测不是某个炫酷特效的附属品,而是整个交互逻辑的底层脉搏。我带过不少刚接触游戏编程的开发者,他们常把精力全扑在角色动画、UI美化或音…

2026/10/18 3:30:17 阅读更多 →
自然语言驱动图表生成深度实战:图表狐在气候、能源等5大场景下的文本指令控制范式

自然语言驱动图表生成深度实战:图表狐在气候、能源等5大场景下的文本指令控制范式

传统图表工具需要手动操作或编写代码,而图表狐(https://graphai.crazystone.work)基于AIGC技术,让用户通过自然语言即可生成折线图、桑基图、雷达图等28种专业图表。本文通过5个跨领域实战案例(气候、运动、考古、能源…

2026/10/18 3:29:17 阅读更多 →

日新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/18 0:00:55 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/18 0:00:55 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/18 0:00:55 阅读更多 →

月新闻

我发现了一个新思路:用 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/18 0:55:02 阅读更多 →
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/17 17:22:31 阅读更多 →
黑夜航拍船只数据集训练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/16 14:23:36 阅读更多 →