# install protoc RUN wget http://github.com/protocolbuffers/protobuf/releases/download/v3.14.0/protobuf-all-3.14.0.tar.gz \ && tar -zxvf protobuf-all-3.14.0.tar.gz && cd protobuf-3.14.0/ && ./configure && make && make install
ENV LD_LIBRARY_PATH=/usr/local/lib
WORKDIR /home/www/base.domain.com
COPY go.mod . COPY go.sum . RUN go mod download # github 的protoc 版本的新版本 # RUN go get github.com/golang/protobuf/protoc-gen-go # github 的protoc 版本的旧版本,如果使用etcd集群需要使用老版本 # RUN go get github.com/golang/protobuf/protoc-gen-go@v1.3.2
# google 的protoc 版本的 新版本 RUN go get google.golang.org/protobuf/cmd/protoc-gen-go && go get google.golang.org/grpc/cmd/protoc-gen-go-grpc
# grpc gateway v1 和 swagger 如结合 etcd集群需要使用此旧版本 # RUN go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-grpc-gateway && \ # && go install github.com/grpc-ecosystem/grpc-gateway/protoc-gen-swagger
# grpc gateway v2 版本 和 swagger插件 RUN go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-gateway \ && go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-openapiv2
COPY . .
# RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -o web_serve main.go RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags="-s -w" -installsuffix cgo -o web_serve main.go