一键编写K8S 部署文件,超简单

3 篇文章 0 订阅

goctlgo-zero 的内置脚手架工具,主要用于提升开发效率,它可以一键生成代码、文档、部署 k8s yaml、dockerfile 等 。

goctl 支持多种数据库模型代码生成指令,包括 MySQL、PostgreSQL、MongoDB。使用 goctl model 可以快速生成数据库模型代码,例如使用 goctl model mysql 可以生成基于 MySQL 的 model 代码,支持从 sql 文件和数据库连接两种方式生成 。

此外,goctl 还提供了模板定制化功能,允许开发者根据项目需求自定义模板,以生成符合特定格式和结构的代码。开发者可以通过 goctl template 命令对模板进行初始化、更新、回滚和清理操作。

1. 安装goctl

       要安装 goctl,你可以直接使用 Golang 进行安装,对于 Go 版本在 1.16 以前的,可以使用命令 GO111MODULE=on go get -u github.com/zeromicro/go-zero/tools/goctl@latest 进行安装,而对于 Go 版本在 1.16 及以后的,使用命令 go install github.com/zeromicro/go-zero/tools/goctl@latest 即可。

2. 生成 K8S 部署文件

goctl  kube  deploy  -name  nginx  -namespace  niuma   -image  nginx:v1.5   -o nginx.yaml   -port  8080

以下是goctl生成的基本yaml文件(根据需要自行修改)

---------------------------------------------------------------------------------------------------------------------------------

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:latest
        ports:
        - containerPort: 80

---
apiVersion: v1
kind: Service
metadata:
  name: nginx-service
spec:
  selector:
    app: nginx
  ports:
    - protocol: TCP
      port: 80
      targetPort: 80
  type: LoadBalancer

---------------------------------------------------------------------------------------------------------------------------------

3. 运行nginx.yaml文件      kubectl  apply -f  nginx.yaml

4. 部署服务时候,如果这个命名空间 niuma  不存在,先创建       kubectl create ns niuma 

5. 查询容器状态    kubectl  get pod -A (查询所有pod)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值