当前位置: 首页 > news >正文

我的go学习笔记之流水线部署到本地k8s集群

哈哈哈,我是不是把时间都用到了刀把上😎

遇到问题可以直接复制问题给AI
照着解决就行

我记录一下我遇到的坑
1.子系统就选Ubuntu,别选archLIinux,🥲
2.别用docker Desktop来部署k8s,一堆坑
3.直接在WSL子系统中执行

docker pull kindest/node:v1.31.0

4.k8s部署文件中的的name和app镜像路径等项目名称相关的都小写
5.镜像推到github之后,可见级别是private的,改成public//也有可能不是坑,总之private的要部署会需要配置复杂
6.WSL2 下的 port-forward 默认不能被 Windows 浏览器直接访问,需要用 WSL2 的 IP 访问。

准备工作

环境:
Windows11 +
WSL2-Ubuntu 24.04 +
k8s(kind) +
docker +
github action

1.安装WSL2-Ubuntu 24.04

直接在软件商店里安装

安装docker

官网
docker官网下载

或者
商店

构建Dockerfile

我用的是VSCode的docker插件生成的
按住快捷键ctrl+shift+p
粘贴或者输入Container images: Build Image
点击
生成成功

安装k8s

docker pull kindest/node:v1.31.0

生成k8s部署文件

文件位置:

我用chatGPT生成的
避坑点: name和app和image名称都小写

apiVersion:apps/v1kind:Deploymentmetadata:name:mygospec:replicas:1selector:matchLabels:app:mygotemplate:metadata:labels:app:mygospec:containers:-name:mygoimage:ghcr.io/fenghaoyun-monster/mygo:latestports:-containerPort:8080---apiVersion:v1kind:Servicemetadata:name:mygospec:type:NodePortselector:app:mygoports:-port:8080targetPort:8080

在WSL环境创建集群

kind create cluster --name mygo

在WSL环境构建项目镜像

docker pull kindest/node:v1.31.0

Push 到 GHCR

docker push ghcr.io/fenghaoyun-monster/mygo:latest

坑点:
镜像推到github之后,可见级别是private的,改成public
GitHub → Profile → Packages
进入 mygo package → settings → Visibility → set public。

查看节点部署状态

kubectl get pods

需要是mygo-xxxx 1/1 Running

访问服务

因为我们的集群是运行在WSL子系统中的,子系统用的是NAT网络,宿主机的代理啥的是用不了的,
浏览器中访问我们的服务我们需要
端口映射

kubectl port-forward svc/mygo 8080:8080

让这个命令保持运行
新开一个WSL命令行
运行

ip addr show eth0

得到类似
inet 172.24.5.10/20
我们就可以在apifox或者浏览器中访问

http://172.24.5.10:8080/demo

就能访问啦

http://www.cnnetsun.cn/news/5827.html

相关文章:

  • antigravity不能选择模型的解决方案
  • 进程的信号处理(signal),守护进程编写,进程组和会话
  • Shell,解释程序,脚本程序与进程以及线程的关系,工作原理和机制
  • AI营销内容生产:哪些平台支持全球多语言内容同步生产?
  • PLabel半自动标注系统:5分钟快速部署与完整使用指南
  • TCP0030A交流/直流电流探头
  • 【稀缺资料】Docker Offload生产环境避坑指南:5大高频故障应对策略
  • Wan2.1:让电影级视频创作走进寻常百姓家
  • Stable Audio Tools 终极指南:从零开始掌握音频生成技术
  • Wan2.2-T2V-5B为何成为开发者新宠?五大优势告诉你
  • Wan2.2-T2V-A14B支持多语言输入,全球化内容创作的新利器
  • 岐金兰AI元人文构想:技术哲学基石与文明级范式革命
  • Wan2.2-T2V-A14B支持皮影戏传统艺术形式数字化创新
  • 为什么90%的智能Agent在生产环境失败?Docker编排策略避坑指南
  • GPS轨迹编辑终极指南:开源工具的完整解决方案
  • Virtual-Display-Driver终极指南:免费创建虚拟显示器的完整教程
  • Meridian广告预算优化:如何用智能算法实现ROI提升50%
  • 2025 Neovim 插件趋势深度解析:AI 驱动、性能优先与极简主义崛起
  • 2025年最值得入手的5款AI Wiki工具:告别信息混乱,让知识管理更智能!
  • Wan2.2-T2V-A14B实战测评:长视频时序连贯性究竟有多强?
  • 大厂高质量Java面试题集锦:高级Java工程师面试八股汇总
  • 云服务器带宽:数字时代的隐形引擎,决定业务生死的“高速公路“
  • 70场造百球!C罗独占历史第一,这项世纪纪录恐难被超越
  • 政企数字化转型:如何选择最合适的私有化视频会议方案
  • CAXACAD让我和软件切换说拜拜
  • Wan2.2-T2V-A14B在婚礼纪念视频个性化定制中的温情演绎
  • Homebrew包管理器:为什么开发者都在用的macOS软件安装神器?
  • 巴菲特的商业模式分析
  • Flomo到Obsidian数据迁移:如何实现无缝笔记同步的终极指南
  • 终极指南:10分钟掌握BladeDISC深度学习编译器优化技巧