个人使用go开发学习的记录,国内可以查看掘金
go-zero单体服务+antd开发后台 开发环境配置
- Ubuntu环境搭建
- Vscode 远程连接设置
- 安装Docker
- 安装docke-compose
- 服务器提交github配置(选看)
- 编写Dockerfile
- 配置golang环境
- 安装nodejs
- go-zero环境配置
- 接口demo开发
- antdpro demo
实战开发
权限管理
go-zero-antd后台-前端
go-zero-antd实战
- 前言
- 项目下载启动
- go-zero学习方法
- go-zero添加cobra命令行工具
- go-zero添加asynq队列任务
- antd关闭国际化,用户密码加密存储,增加用户退出接口
- antd与go-zero放在一个目录下eslint问题,修改用户密码,前后端完整过程整理
- golang断言遇到的问题
- 用户管理antd
- 资源发布antd,protable编辑单行提交,没有使用editTable
- antd用户角色分配权限,antd tree控件,hooks使用【前后端权限管理完结】
go tcp服务实战
- golang tcp服务-1(开始)
- golang tcp服务-2(连接管理,解包封包,心跳)
- golang tcp服务-3(github发布自己的包和chat项目初始化)
- golang tcp服务-4(项目设计参考go-zero,tcp基于tnet)
- golang tcp服务-5(tcp长连接基于cobra完成singleTest tcp命令行客户端)
- golang tcp服务-6 (解决路由不存在报错的问题,修改消息接收方式)
- golang tcp服务-7 (修复tnet阻塞问题chat创建房间加入房间功能)
K8s官方文档学习 概念
工作负载(了解k8s之后发现这块很重要)
- Pod
- Deployment
- ReplicaSet
- StatefulSet
- DaemonSet
- [Job/CronJob]
- 服务
- Ingress
k8s 150个练习
深入剖析k8s
容器实战
云原生架构与GitOps实战
- 从零上手gitops(multipass使用,部署项目到集群)
- k8s实现自动扩容和自愈
- 借助GitOps实现应用秒级自动发布和回滚
- k8s实战-示例应用
- 使用命名空间隔离团队及应用环境
- 业务选择最适合的工作负载类型
- K8s服务发现
- K8s应用配置
- K8s集群业务服务暴露外网访问
- K8s自动弹性扩容
- K8s健康状态
K8s学习整理
- 容器命令和dockerfile和yaml编写规则
- Ingress和Ingress Controller和Ingress Class理解
- kubectl备忘录+部署备忘录
- k8s各类资源操作详解
- harbor、gitlab和ArgoCD安装
- Harbor配合ArgoCD使用
Istio
Linkerd
go-zero-rpc-antd-K8s-GitOps实战
使用vbox + Ubuntu虚拟机 + docker + docker-compose + vscode远程容器内开发golang
-
- vbox安装(自行安装)
-
- 使用vbox安装Ubuntu(自行安装)
-
- 在Ubuntu中安装docker和docker-compose (自行安装)
-
- vscode远程容器内开发golang
goivinck 这个是基于go-zero的一个开发环境
Remote - SSH (这个可以通过ssh远程连接服务器)
Remote Development (这个可以等远程连接完服务器再连接容器)
打开 Remote - SSH 可以看到这个界面,然后新建连接
输入 ssh root@192.168.1.12 -A -A一定要加不然有问题
进去之后选择打开目录,我这边是已经弄好的,就直接选择一个目录进去即可
这个就是虚拟机中Ubuntu中之前需要使用到的docker-compose的一个目录,记得docker-compose up启动
进入目录之后需要安装好 Remote Development 这个和Remote SSH同一个选项按钮打开后有一个远端资源管理器选择Containers。
这个进去之后会很慢,应该是vscode在配置一些远端资源,实在太慢就关闭重新进入一遍即可
看到这个页面点击Refresh,弹出框输入服务器密码即可(这个页面出来慢,需要多次尝试,暂时没搞清楚原因)
这个已经是远端服务器docker运行的Containers列表了,选择golang的那个进入
至此已经可以编写代码执行go程序了。这个进来之后vscode会让你安装go tools一些插件选择安装即可。
这种开发环境对于我来说好处就是不管我是用Windows还是mac来开发都可以使用。这种开发环境配置算是复杂的,如果个人只是单纯需要golang的环境,我建议直接配置好虚拟机之后直接在虚拟机中配置go环境,然后用vscode远程开发即可。看个人喜好。
开发环境我个人比较喜欢本地使用虚拟机安装linux之后共享目录,这样代码可以本地编写,运行环境在虚拟机中。这样可以保证我们开发环境尽量贴合生产环境,现在vscode提供了Remote SSH这个插件很好用,我不需要再搞共享目录了,再配合docker可以快速创建统一的开发环境,随时切换都可以。
学会了这种开发模式后在允许的情况下可以直接调试线上代码
go-zero单体服务+antd开发后台 一个完整的go+antd的开发学习实战