# krm-backend **Repository Path**: dawn_chuang/krm-backend ## Basic Information - **Project Name**: krm-backend - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-10-04 - **Last Updated**: 2024-11-05 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ### 用来描述项目的信息 ``` 这是一个脚手架项目,可以根据该项目快速生成一个基础框架 ``` ## Go语言服务部署 ### 如何部署 1. 拿到代码 2. 编译成二进制包 3. 构建成容器镜像 4. 推送到镜像仓库 5. docker run || docker-compose 6. k8s-yaml文件 ### docker部署 ```shell docker run -itd \ --name go-demo \ -p8080:8080 \ -e LOG_LEVEL=info \ -e GIN_MODE=release \ -e USERNAME=dawn \ -e PASSWORD=E10ADC3949BA59ABBE56E057F20F883E \ registry.cn-shanghai.aliyuncs.com/rushbi/go-demo:v1 ``` ### docker-compose ```yaml version: '3' services: go-demo: image: registry.cn-shanghai.aliyuncs.com/rushbi/go-demo:v1 container_name: go-demo restart: always environment: LOG_LEVEL: debug GIN_MODE: release USERNAME: dawn PASSWORD: 123456 ports: - 8080:8080 ``` ### k8s yaml ```yaml apiVersion: v1 kind: Service metadata: name: go-demo labels: app: go-demo spec: selector: app: go-demo type: NodePort ports: - name: web port: 8080 nodePort: 32080 targetPort: 8080 --- apiVersion: apps/v1 kind: Deployment metadata: name: go-demo spec: strategy: rollingUpdate: maxSurge: 1 maxUnavailable: 0 replicas: 1 selector: matchLabels: app: go-demo template: metadata: labels: app: go-demo spec: containers: - name: go-demo image: registry.cn-shanghai.aliyuncs.com/rushbi/go-demo:v1 imagePullPolicy: IfNotPresent ports: - name: web containerPort: 8080 env: - name: TZ value: Asia/Shanghai - name: LANG value: C.UTF-8 - name: GIN_MODE value: release - name: LOG_LEVEL value: info - name: USERNAME value: chuang - name: PASSWORD value: "123456" resources: requests: cpu: 100m memory: 100Mi limits: cpu: 500m memory: 200Mi readinessProbe: initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 2 successThreshold: 1 failureThreshold: 2 tcpSocket: port: 8080 livessProbe: initialDelaySeconds: 10 periodSeconds: 10 timeoutSeconds: 10 successThreshold: 1 failureThreshold: 3 tcpSocket: port: 8080 ```