别再本地 docker build 了!教你用 GitHub Actions 搭建全自动流水线,真香
说实话,你是不是也经历过这种“垃圾时间”:
代码终于写完了,兴冲冲地在本地终端敲下 docker build,然后……
电脑风扇开始狂转,CPU 温度飙升,你甚至不敢切出去看视频,生怕卡顿。好不容易构建完了,还要 docker push,盯着那个慢吞吞的进度条,祈祷网络别断。
这一套流程下来,少说十几二十分钟没了。如果中间发现有个标点符号写错了?好家伙,推倒重来。
这就叫“被工具玩了”,而不是“玩工具”。
今天我要给大家安利一个我用了很久、相见恨晚的神器组合:GitHub Actions + Docker Hub。
简单说,就是把“构建”和“上传”这两件费时费力的事,从你的本地电脑,转移到 GitHub 的服务器上去做。
Github Action 是 Github 推出的一个持续集成和持续交付的平台,能够让你自动化你的编译、测试和部署流程。
重点是:它完全免费,速度飞快,而且全自动。
这就好比你写好菜谱(代码),不用自己进厨房(本地构建),直接把菜谱扔给微软请的免费大厨(GitHub Actions),他做好了直接端上桌(发布到 Docker Hub)。
怎么搞?我不整那些虚头巴脑的概念,直接上实操,保姆级教程,包教包会。
第一步:准备好你的“菜谱”和“厨房”
首先,你得有个 GitHub 账号,和一个 Docker Hub 账号(存镜像的地方)。
在你的 GitHub 项目里,必须得有一个 Dockerfile。这个大家都懂,就是告诉机器怎么打包你的程序。
第二步:把“钥匙”交给 GitHub(关键!)
这是很多新手最容易卡住的地方。
你要让 GitHub 帮你上传镜像,你得给它权限,但你肯定不能把密码直接写在代码里吧?那样全世界都看见了。
正确做法是这样:
1.打开你的 GitHub 仓库,点击 Settings(设置)。
2.找到左侧的 Secrets and variables -> Actions。
3.点击 New repository secret。
我们需要添加两个“暗号”:
- DOCKER_USERNAME:填你的 Docker Hub 用户名。
- DOCKER_PASSWORD:填你的 Docker Hub 密码(或者 Access Token,建议用 Token 更安全)。

这样,GitHub 就在后台悄悄记住了你的身份,别人看代码是绝对看不到的。
第三步:告诉保姆“该干活了”
接下来,我们要写一个脚本,告诉 GitHub:“嘿,只要我更新了代码,你就立刻帮我干活!”
在你的项目根目录下,建立一个文件夹:.github/workflows(注意前面的点)。 在里面新建一个文件,名字随便取,比如 docker-publish.yml。
复制下面这段代码进去(虽然是代码,但很好懂,我加了人话注释):
YAML
1 | name: Build and Push Docker Image |
第四步:见证奇迹
保存,提交代码,Push 到 GitHub。
现在,你可以关掉终端,去倒杯咖啡,或者刷刷手机。
打开 GitHub 仓库的 Actions 标签页,你会看到一个小绿点在转圈。点进去,你会发现 GitHub 的服务器正在疯狂为你通过云端宽带拉取依赖、编译代码。

通常几分钟后,那个圈圈变成绿色的对号。
这时候你去 Docker Hub 刷新一下,崭新的镜像已经躺在那儿了。
写在最后
为什么要折腾这个?
除了省电省网费,更重要的是它能让你养成“自动化”的思维。
以后无论你在哪里,用着多烂的电脑,甚至是用 iPad 写代码,只要你把代码往 GitHub 一推,云端的流水线就开始自动运转。
等哪天服务器挂了,你只需要一条拉取命令就能恢复,而不是满头大汗地在本地重新打包。
把重复的工作交给机器,把时间留给自己。 这才是程序员该有的“偷懒”方式。
趁热打铁,现在就去给你的项目加个 Actions 吧,那种看着绿灯自动亮起的感觉,真的很爽。



