我正在尝试在Google Cloud Run上使用Docker运行Go应用程序,但我遇到了以下错误:
容器无法启动。无法启动并侦听由PORT环境变量定义的端口。此修订版的日志可能包含更多信息。
我已将端口固定为8080,如文档中所述,但我认为我的Dockerfile不正确。有人知道我错过了什么吗?最初的回答。
容器无法启动。无法启动并侦听由PORT环境变量定义的端口。此修订版的日志可能包含更多信息。
我已将端口固定为8080,如文档中所述,但我认为我的Dockerfile不正确。有人知道我错过了什么吗?最初的回答。
FROM golang:1.12-alpine
RUN apk upgrade -U \
&& apk add \
ca-certificates \
git \
libva-intel-driver \
make \
&& rm -rf /var/cache/*
ENV GOOS linux
ENV GOARCH amd64
ENV CGO_ENABLED=0
ENV GOFLAGS "-ldflags=-w -ldflags=-s"
ENV PATH $GOPATH/bin:/usr/local/go/bin:$PATH
RUN echo $PATH
RUN mkdir -p "$GOPATH/src" "$GOPATH/bin" && chmod -R 777 "$GOPATH"
RUN go get -u github.com/cespare/reflex
# RUN reflex -h
# Setup modules after reflex install
ENV GO111MODULE=on \
GOFLAGS="$GOFLAGS -mod=vendor"
WORKDIR /go/src/bitbucket.org/team/app/
COPY . .
CMD [ "go", "run", "cmd/main.go" ]
port:= os.Getevn(“PORT”)
,然后使用该值进行侦听器。此外,请在Cloud Run Console GUI或Stackdriver中检查日志以获取错误消息。 - John Hanley