Sign inSign up

laily/connectrpcbuild

By laily

•Updated 6 months ago

generating connectrpc code for typescript and golang,

Image
0

739

laily/connectrpcbuild repository overview

installed all cli of generate connectrpc code for typescript and golang, the version of these cli are in the Dockerfile below. Just put your buf.gen.yaml and code, then run buf generate

⁠usage

docker run -v /myproject:/app laily/connectrpcbuild buf genarate

⁠Dockerfile

FROM debian:bullseye

# install node 
# wget -O _data/install_node.sh https://deb.nodesource.com/setup_23.x
COPY _data/install_node.sh ./install_node.sh

RUN bash install_node.sh && \
apt-get install -y --no-install-recommends nodejs && \
apt-get clean && \
apt-get autoclean && \
rm -rf /var/lib/apt/lists/* && \
npm config set registry https://registry.npmmirror.com && \
npm config set @buf:registry https://buf.build/gen/npm/v1 && \
npm install -g ts-protoc-gen && \
npm install -g @connectrpc/protoc-gen-connect-es@"^1.0.0" @bufbuild/protoc-gen-es@"^1.0.0" && \
npm install -g @connectrpc/connect@"^1.0.0" @connectrpc/connect-web@"^1.0.0" @bufbuild/protobuf@"^1.0.0"  && \
npm cache clean --force

# install go 1.23
# wget -O _data/go.tar.gz https://go.dev/dl/go1.23.3.linux-amd64.tar.gz
COPY _data/go.tar.gz /tmp/go.tar.gz

ENV GOPROXY=goproxy.cn,direct
ENV GOSUMDB=sum.golang.google.cn
ENV PATH=$PATH:/root/go/bin

RUN cd /tmp/ && \
tar zxf go.tar.gz && \
mv go /usr/local/ && \
ln -s /usr/local/go/bin/go /usr/local/bin/go && \
rm /tmp/go.tar.gz && \
go install github.com/bufbuild/buf/cmd/[email protected] && \
go install google.golang.org/protobuf/cmd/[email protected] && \
go install github.com/fullstorydev/grpcurl/cmd/[email protected] && \
go install connectrpc.com/connect/cmd/[email protected] && \
rm -rf /go/pkg /go/src 

# 设置工作目录
WORKDIR /app

Tag summary

Content type

Image

Digest

sha256:25c028aa2…

Size

673 MB

Last updated

6 months ago

docker pull laily/connectrpcbuild