惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

N
News and Events Feed by Topic
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
月光博客
月光博客
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
S
SegmentFault 最新的问题
V
V2EX
阮一峰的网络日志
阮一峰的网络日志
C
Cisco Blogs
博客园 - 叶小钗
P
Privacy International News Feed
Jina AI
Jina AI
Apple Machine Learning Research
Apple Machine Learning Research
T
Threatpost
IT之家
IT之家
博客园 - 聂微东
Know Your Adversary
Know Your Adversary
Help Net Security
Help Net Security
罗磊的独立博客
I
Intezer
S
Schneier on Security
博客园_首页
C
CERT Recently Published Vulnerability Notes
雷峰网
雷峰网
Cisco Talos Blog
Cisco Talos Blog
宝玉的分享
宝玉的分享
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
Webroot Blog
Webroot Blog
TaoSecurity Blog
TaoSecurity Blog
MyScale Blog
MyScale Blog
P
Privacy & Cybersecurity Law Blog
T
The Exploit Database - CXSecurity.com
PCI Perspectives
PCI Perspectives
Security Latest
Security Latest
H
Heimdal Security Blog
S
Secure Thoughts
Hacker News: Ask HN
Hacker News: Ask HN
Y
Y Combinator Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
Microsoft Security Blog
Microsoft Security Blog
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
SecWiki News
SecWiki News
The GitHub Blog
The GitHub Blog
A
Arctic Wolf
A
About on SuperTechFans
aimingoo的专栏
aimingoo的专栏
T
Threat Research - Cisco Blogs
Engineering at Meta
Engineering at Meta
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC

二丫讲梵

学习周刊-总第258期-2026年第15周 学习周刊-总第257期-2026年第14周 学习周刊-总第256期-2026年第13周 学习周刊-总第255期-2026年第12周 学习周刊-总第254期-2026年第11周 学习周刊-总第253期-2026年第10周 临时插播一条羊毛,免费领取450元大模型API代金券 学习周刊-总第252期-2026年第09周 学习周刊-总第251期-2026年第08周 学习周刊-总第250期-2026年第07周 学习周刊-总第249期-2026年第06周 诚邀评论,聊聊你所知欲知的我 学习周刊-总第248期-2026年第05周 我的QQ动态之2015年 我的QQ动态之2014年 我的QQ动态之2013年 我的QQ动态之2012年 我的QQ动态-2010-2011年 我的QQ动态-创栏小叙 学习周刊-总第247期-2026年第04周 Nexus社区版权益阉割--一文告诉你有哪些版本可以选择 学习周刊-总第246期-2026年第03周 学习周刊-总第245期-2026年第02周 学习周刊-总第244期-2026年第01周 学习周刊-总第243期-2025年第52周 学习周刊-总第242期-2025年第51周 开源项目ZenOps:带你领略禅意运维 学习周刊-总第241期-2025年第50周 用京东金融,享负债人生 学习周刊-总第240期-2025年第49周 学习周刊-总第239期-2025年第48周 整理我在静态服务透明代理上的极致求索之路,最后一个你绝想不到 学习周刊-总第238期-2025年第47周 我们输了,但收获颇多 太多了,太多了 学习周刊-总第237期-2025年第46周 学习周刊-总第236期-2025年第45周 学习周刊-总第235期-2025年第44周 二五年国庆二三事 学习周刊-总第234期-2025年第43周 学习周刊-总第233期-2025年第42周 学习周刊-总第232期-2025年第41周 学习周刊-总第231期-2025年第40周 学习周刊-总第230期-2025年第39周 西湖毅行 2025年开源世界逸闻三则 学习周刊-总第229期-2025年第38周 手抄《与妻书》 CNB开发与构建基于docker-cache缓存复用的配置实践心得 学习周刊-总第228期-2025年第37周 父亲善行录 学习周刊-总第227期-2025年第36周 带你认识我之看看我的高中同学录(其二) 学习周刊-总第226期-2025年第35周 带你认识我之看看我的高中同学录(其一) 认识神级MCP工具系列--用anyquery和数据库交互 学习周刊-总第225期-2025年第34周 学习周刊-总第224期-2025年第33周 学习周刊-总第223期-2025年第32周 学习周刊-总第222期-2025年第31周 学习周刊-总第221期-2025年第30周 CNB云原生开发环境届的瑞士军刀,详解qifei项目 vuepress-vdoing主题配置自建不蒜子统计 学习周刊-总第220期-2025年第29周 写在博客发表文章1000篇的节点 从claude cli的体验聊聊最大的敌人是我们自己的成见 学习周刊-总第219期-2025年第28周 学习周刊-总第218期-2025年第27周 学习周刊-总第217期-2025年第26周 理论正确,事实错误 学习周刊-总第216期-2025年第25周 学习周刊-总第215期-2025年第24周 学习周刊-总第214期-2025年第23周 学习周刊-总第213期-2025年第22周 学习周刊-总第212期-2025年第21周 从赵心童世锦赛夺冠聊聊我的斯诺克情缘 学习周刊-总第211期-2025年第20周 记录二五年五一之短暂回归家庭 学习周刊-总第210期-2025年第19周 学习周刊-总第209期-2025年第18周 学习周刊-总第208期-2025年第17周 Go开发实践之Gin框架将前端的dist目录embed到二进制 学习周刊-总第207期-2025年第16周 近期关于cobra库的一些实践心得总结 学习周刊-总第206期-2025年第15周 我的嗜好--嗑瓜子 记大宝参加幼儿园组织的清明烈士陵园扫墓活动 学习周刊-总第205期-2025年第14周 学习周刊-总第204期-2025年第13周 前端开发小笔记--在数组中给字段添加值与删除字段的操作 学习周刊-总第203期-2025年第12周 人生实苦,何以自渡 学习周刊-总第202期-2025年第11周 近期发现的一些优秀的工具提名(一) 学习周刊-总第201期-2025年第10周 学习周刊-总第200期-2025年第09周 记一次女友喝醉使我忍术破功 爱情风波--一次分手又复合的经历 学习周刊-总第199期-2025年第08周 整理我的信息源
用上赛博菩萨CNB,咱直接起飞
二丫讲梵 · 2025-03-28 · via 二丫讲梵

今天来分享一个近期带给我许多惊喜体验的网站,CNB (opens new window),第一次听说这个网站,是半年前经由运维小弟 (opens new window)介绍,注册了账号,当时没有过多体验,放到了一边。年后凭借 Deepseek 的东风,CNB 群里有不少折腾大模型的讨论,我开始重新关注起这个网站。

什么是 CNB,CNB 是 Cloud Native Build 的简称,同时也是超牛逼的简称。首先它是一个代码托管仓库,你可以类比 GitHub,以及 Gitee,其次,他还支持流水线构建的能力,可以类比 Github Action,最后,他也支持 WebIDE 的能力,并且原生支持 vscode 基于 remote-ssh 连接使用。

接下来我用两个自己最近实践的案例场景,来介绍下他的用法。

# 构建

在整个 CNB 系统中,构建以及云开发都是基于云原生环境构筑的,因此镜像成为这些操作的底层环境支撑,默认情况下,官方会以 cnbcool/default-dev-env:latest 作为基础镜像,但这个镜像只做了基础的封装,我们可以自己封装一些镜像,来作为开发与构建的基础环境。

仓库地址: https://cnb.cool/znb/images (opens new window)

我创建了一个专门存放封装的镜像的仓库,借助 cnb 的构建能力,自动构建镜像,并将镜像上传到 cnb 的制品库。

现已集成如下基础环境:

更多构建方面的语法,详见:官方文档 (opens new window),你可以根据自己的需求定制自己的镜像。

# 起飞

# 基础玩法

CNB 支持自定义云开发拉起的镜像,又支持 remote-ssh,继承了在线开发,端口映射的优点,因此,我们可以基于自己封装的镜像,来做一个自己趁手的起飞环境。

仓库地址: https://cnb.cool/znb/qifei (opens new window)

我创建了 qifei 这个仓库,里边通过如下信息,内置集成了我封装后的 debian (opens new window) 环境:

$ cat .ide/Dockerfile

FROM docker.cnb.cool/znb/images/debian

1
2
3

这个环境,你可以轻松拥有。只需 fork 我这个仓库,然后点击起飞即可:

My_Photor_1743079249463.webp

CNB 默认的临时环境已经集成了 docker 命令,而且支持 dind 的玩法,于是,起飞之后,你可以直接像我这么玩:

$ wget https://raw.githubusercontent.com/opsre/go-ldap-admin/refs/heads/main/docs/docker-compose/docker-compose.yaml
$ docker compose up -d

1
2

因为 CNB 针对许多开发相关的地址都做过加速,因此从 github 下载文件也是非常快的。

My_Photor_1743079764745.webp

然后点击到 PORTS 将内部端口映射出来:

My_Photor_1743079917242.webp

然后就可以在浏览器,或者本地调用映射出来的地址了。

这个起飞实在是太爽啦,当我第一次把这个流程跑通的时候,忍不住感叹了一句,CNB,ZNB。用上 CNB ,从此幸福一生。

# 进阶玩法

在 cnb 官方文档 (opens new window)介绍中,云原生开发环境,除了可以在 .ide/Dockerfile 中定义环境之外,还支持在 .cnb.yml 中进行定义,而且支持更加丰富的能力,比如支持自定义启动前后的命令。

比如使用如下代码定义:

$ cat .cnb.yml

$:
  vscode:
    - docker:
        image: docker.cnb.cool/znb/images/debian
      services:
        - vscode
        - docker
      stages:
        - name: 自定义启动后动作
          script: |
            cd /opt
            wget https://raw.githubusercontent.com/opsre/go-ldap-admin/refs/heads/main/docs/docker-compose/docker-compose.yaml
            docker compose up -d

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15

这样子,当你点击起飞之后,就会自动将环境拉起来了。

通过拉起环境过程的构建日志,可以看到我们定义的拉环境命令在执行了:

My_Photor_1743080684559.webp

# 最后

CNB 目前在我个人内心,堪比 赛博菩萨,除了解决个人博客的流水线自动化之外,还满足了我随时拉起一个空白环境,做一些小实验,做一些临时测试的需求,更为重要的是,这个临时环境,还拥有天然的加速,执行 apt-get 安装,或者其他语言的依赖拉起,都是极其丝滑的体验。

# 补充

如上提到的构建以及云开发环境,在CNB 中,以核时作为计费单位,目前官方仍在公测中,提供免费+限免额度:

My_Photor_1743081181105.webp

详见:官方文档 (opens new window)

官方也会在一些直播活动时,赠送核时,可保持关注。基于 CNB打造出一个属于自己的第二开发世界。