This commit is contained in:
2021-12-29 20:32:45 +08:00
parent 93218f6547
commit 6539bce6db
12 changed files with 626 additions and 89 deletions
+3 -3
View File
@@ -9,15 +9,15 @@ WORKDIR /go/src
ADD . .
RUN go mod tidy
RUN CGO_ENABLED=0 GOOS=linux go build -ldflags="-s -w" -o api_example_api ./app/api/example_api
FROM alpine as brahma-api
FROM alpine as example_api
WORKDIR /go/src
#LABEL maintainer "The Prometheus Authors <prometheus-developers@googlegroups.com>"
COPY --from=builder /usr/share/zoneinfo /usr/share/zoneinfo
# copy main and config from builder
COPY --from=builder /go/src/api_example_api ./
ENV TZ=Asia/Shanghai
ENV env=pro
ENV endpoints=http://etcd-server:2379
RUN chmod +x ./api_example_api
LABEL io.portainer.accesscontrol.teams="admin"
EXPOSE 8080
CMD ["./api_example_api"]
+10 -3
View File
@@ -1,15 +1,22 @@
package main
import (
"git.icechen.cn/pkg/go-template/app/service/example_service/pkg/user"
"context"
"git.icechen.cn/pkg/go-template/pkg/proto/example_service"
"git.icechen.cn/pkg/go-template/pkg/rpc"
"github.com/gofiber/fiber/v2"
"google.golang.org/protobuf/types/known/emptypb"
)
func main() {
user.GetUser()
app := fiber.New()
app.Get("/test", func(c *fiber.Ctx) error {
return c.SendString("success")
userInfo, err := example_service.NewUserClient(rpc.GetServiceConn("example_service")).SayHello(context.TODO(), &emptypb.Empty{})
if err != nil {
return err
}
return c.JSON(userInfo)
})
err := app.Listen(":8080")
if err != nil {
@@ -1,5 +1,7 @@
package main
func main() {
import "git.icechen.cn/pkg/go-template/app/service/example_service/pkg/user"
func main() {
user.RpcServer()
}
+31 -3
View File
@@ -1,7 +1,35 @@
package user
import "fmt"
import (
"context"
"git.icechen.cn/pkg/go-template/pkg/proto/example_service"
"google.golang.org/grpc"
"google.golang.org/grpc/reflection"
"google.golang.org/protobuf/types/known/emptypb"
"log"
"net"
)
func GetUser() {
fmt.Println("get user")
func RpcServer() {
lis, err := net.Listen("tcp", ":3000")
if err != nil {
log.Fatalf("failed to listen: %v", err)
}
s := grpc.NewServer()
example_service.RegisterUserServer(s, &Server{})
reflection.Register(s)
if err := s.Serve(lis); err != nil {
log.Fatalf("failed to serve: %v", err)
}
}
type Server struct {
}
func (s *Server) SayHello(ctx context.Context, empty *emptypb.Empty) (*example_service.UserInfo, error) {
return &example_service.UserInfo{
Name: "icechen",
}, nil
}