Skip to content

Commit

Permalink
Merge pull request #37 from zhoushuguang/dev
Browse files Browse the repository at this point in the history
let's go k8s
  • Loading branch information
zhoushuguang authored Dec 17, 2023
2 parents 7a48a6b + 0158ce7 commit cedff1e
Show file tree
Hide file tree
Showing 21 changed files with 428 additions and 90 deletions.
10 changes: 10 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,16 @@ https://www.bilibili.com/video/BV11u4y1Y7GC/
#### 文档
https://pwmzlkcu3p.feishu.cn/docx/QZcKdB4VXoUCRDxGilfcTaw7n8e
#### 视频
https://www.bilibili.com/video/BV1u64y177rL

### 第十三课
#### 文档
https://pwmzlkcu3p.feishu.cn/docx/BDNUdhmP4oec6ix1P1ZcqF3rnIc
#### 视频
https://www.bilibili.com/video/BV1bH4y1C7Uj

### 第十四课
#### 文档
https://pwmzlkcu3p.feishu.cn/docx/Ydd4dG8OSobJ1rxJFgacOBKvnSg


66 changes: 0 additions & 66 deletions application/article/api/article.api

This file was deleted.

7 changes: 0 additions & 7 deletions application/article/api/article.go
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ import (
"beyond/application/article/api/internal/config"
"beyond/application/article/api/internal/handler"
"beyond/application/article/api/internal/svc"
"beyond/pkg/consul"
"beyond/pkg/xcode"

"github.com/zeromicro/go-zero/core/conf"
Expand All @@ -32,12 +31,6 @@ func main() {
// 自定义错误处理方法
httpx.SetErrorHandler(xcode.ErrHandler)

// 服务注册
err := consul.Register(c.Consul, fmt.Sprintf("%s:%d", c.ServiceConf.Prometheus.Host, c.ServiceConf.Prometheus.Port))
if err != nil {
fmt.Printf("register consul error: %v\n", err)
}

fmt.Printf("Starting server at %s:%d...\n", c.Host, c.Port)
server.Start()
}
24 changes: 24 additions & 0 deletions application/article/api/etc/article-api-dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
Name: article-api
Host: 0.0.0.0
Port: 80
Auth:
AccessSecret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AccessExpire: 604800
RefreshSecret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
RefreshExpire: 2592000
RefreshAfter: 604800
Oss:
Endpoint: oss-cn-shanghai.aliyuncs.com
AccessKeyId: xxxxxxxxxxxxxxxxxxxx
AccessKeySecret: xxxxxxxxxxxxxxxxxxxx
BucketName: beyond-article
ArticleRPC:
Target: k8s://beyond/article-rpc:9090
NonBlock: false
UserRPC:
Target: k8s://beyond/user-rpc:9090
NonBlock: false
Prometheus:
Host: 0.0.0.0
Port: 9101
Path: /metrics
9 changes: 1 addition & 8 deletions application/article/api/etc/article-api.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Name: article-api
Host: 0.0.0.0
Port: 9092
Port: 80
Auth:
AccessSecret: xxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AccessExpire: 604800
Expand All @@ -24,13 +24,6 @@ UserRPC:
- 127.0.0.1:2379
Key: user.rpc
NonBlock: true
Consul:
Host: 127.0.0.1:8500
Key: article-api
Meta:
env: test
service_group: beyond
service_name: article-api
Prometheus:
Host: 0.0.0.0
Port: 9101
Expand Down
3 changes: 0 additions & 3 deletions application/article/api/internal/config/config.go
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
package config

import (
"beyond/pkg/consul"

"github.com/zeromicro/go-zero/rest"
"github.com/zeromicro/go-zero/zrpc"
)
Expand All @@ -23,5 +21,4 @@ type Config struct {
ConnectTimeout int64 `json:",optional"`
ReadWriteTimeout int64 `json:",optional"`
}
Consul consul.Conf
}
9 changes: 4 additions & 5 deletions application/article/api/internal/svc/servicecontext.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ import (
"beyond/application/user/rpc/user"

"github.com/aliyun/aliyun-oss-go-sdk/oss"
"github.com/zeromicro/go-zero/zrpc"
)

const (
Expand Down Expand Up @@ -35,9 +34,9 @@ func NewServiceContext(c config.Config) *ServiceContext {
}

return &ServiceContext{
Config: c,
OssClient: oc,
ArticleRPC: article.NewArticle(zrpc.MustNewClient(c.ArticleRPC)),
UserRPC: user.NewUser(zrpc.MustNewClient(c.UserRPC)),
Config: c,
OssClient: oc,
//ArticleRPC: article.NewArticle(zrpc.MustNewClient(c.ArticleRPC)),
//UserRPC: user.NewUser(zrpc.MustNewClient(c.UserRPC)),
}
}
22 changes: 22 additions & 0 deletions application/article/rpc/etc/article-rpc-dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Name: article-rpc
ListenOn: 0.0.0.0:9090
DataSource: root:123456@tcp(10.111.196.140:3306)/beyond_article?parseTime=true&loc=Local
CacheRedis:
- Host: 10.103.107.10:6379
Pass:
Type: node
BizRedis:
Host: 10.103.107.10:6379
Pass:
Type: node
Consul:
Host: 127.0.0.1:8500
Key: article-rpc
Meta:
env: test
service_group: beyond
service_name: article-rpc
Prometheus:
Host: 0.0.0.0
Port: 9102
Path: /metrics
2 changes: 1 addition & 1 deletion application/article/rpc/etc/article.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
Name: article.rpc
ListenOn: 0.0.0.0:8686
ListenOn: 0.0.0.0:9090
Etcd:
Hosts:
- 127.0.0.1:2379
Expand Down
22 changes: 22 additions & 0 deletions application/user/rpc/etc/user-rpc-dev.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
Name: user-rpc
ListenOn: 0.0.0.0:9090
DataSource: root:123456@tcp(10.111.196.140:3306)/beyond_user?parseTime=true
CacheRedis:
- Host: 10.103.107.10:6379
Pass:
Type: node
BizRedis:
Host: 10.103.107.10:6379
Pass:
Type: node
Consul:
Host: 127.0.0.1:8500
Key: user-rpc
Meta:
env: test
service_group: beyond
service_name: user-rpc
Prometheus:
Host: 0.0.0.0
Port: 9103
Path: /metrics
30 changes: 30 additions & 0 deletions article-api.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM golang:alpine AS builder

LABEL stage=gobuilder

ENV CGO_ENABLED 0
ENV GOPROXY https://goproxy.cn,direct
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

RUN apk update --no-cache && apk add --no-cache tzdata

WORKDIR /build

ADD go.mod .
ADD go.sum .
RUN go mod download
COPY . .
COPY application/article/api/etc/article-api-dev.yaml /app/etc/article-api.yaml
RUN go build -ldflags="-s -w" -o /app/article-api application/article/api/article.go

FROM scratch

COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
COPY --from=builder /usr/share/zoneinfo/Asia/Shanghai /usr/share/zoneinfo/Asia/Shanghai
ENV TZ Asia/Shanghai

WORKDIR /app
COPY --from=builder /app/article-api /app/article-api
COPY --from=builder /app/etc /app/etc

CMD ["./article-api", "-f", "etc/article-api.yaml"]
61 changes: 61 additions & 0 deletions article-api.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: article-api
namespace: beyond
labels:
app: article-api
spec:
replicas: 1
revisionHistoryLimit: 5
selector:
matchLabels:
app: article-api
template:
metadata:
labels:
app: article-api
spec:
serviceAccountName: endpoints-reader
containers:
- name: article-api
image: article-api:v1.0.0
ports:
- containerPort: 80
readinessProbe:
tcpSocket:
port: 80
initialDelaySeconds: 5
periodSeconds: 10
livenessProbe:
tcpSocket:
port: 80
initialDelaySeconds: 15
periodSeconds: 20
resources:
requests:
cpu: 200m
memory: 256Mi
limits:
cpu: 200m
memory: 256Mi
volumeMounts:
- name: timezone
mountPath: /etc/localtime
volumes:
- name: timezone
hostPath:
path: /usr/share/zoneinfo/Asia/Shanghai

---
apiVersion: v1
kind: Service
metadata:
name: article-api-svc
namespace: beyond
spec:
ports:
- port: 80
targetPort: 80
selector:
app: article-api
30 changes: 30 additions & 0 deletions article-rpc.dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
FROM golang:alpine AS builder

LABEL stage=gobuilder

ENV CGO_ENABLED 0
ENV GOPROXY https://goproxy.cn,direct
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories

RUN apk update --no-cache && apk add --no-cache tzdata

WORKDIR /build

ADD go.mod .
ADD go.sum .
RUN go mod download
COPY . .
COPY application/article/rpc/etc/article-rpc-dev.yaml /app/etc/article-rpc.yaml
RUN go build -ldflags="-s -w" -o /app/article-rpc application/article/rpc/article.go

FROM scratch

COPY --from=builder /etc/ssl/certs/ca-certificates.crt /etc/ssl/certs/ca-certificates.crt
COPY --from=builder /usr/share/zoneinfo/Asia/Shanghai /usr/share/zoneinfo/Asia/Shanghai
ENV TZ Asia/Shanghai

WORKDIR /app
COPY --from=builder /app/article-rpc /app/article-rpc
COPY --from=builder /app/etc /app/etc

CMD ["./article-rpc", "-f", "etc/article-rpc.yaml"]
Loading

0 comments on commit cedff1e

Please sign in to comment.