云运行错误:容器无法启动

罗南·休斯

我无法将基本的Angular应用部署到Google Cloud Run。该错误表明该端口8080不能正确提供服务,但是在我的计算机localhost:8080上本地运行会显示该应用程序。因此,如果有人有想法,我可能需要一些额外的资源来运行云?

详情如下所示:

我创建一个基本的角度应用程序

ng new test-app

Dockerfile如下

FROM node:latest as node
WORKDIR /app
COPY . .

RUN npm install
RUN npm run build --prod

ENV PORT=8080

FROM nginx:latest
COPY --from=node /app/dist/test-app /usr/share/nginx/html
EXPOSE 8080
CMD ["nginx", "-g", "daemon off;"]

我在本地运行构建的容器,可以在localhost:8080看到它

docker container run -p 8080:80 gcr.io/$GOOGLE_PROJECT/test-app:$IMAGE

屏幕截图

然后,我将托管部署到Google Cloud Run。

gcloud run deploy test-app --image gcr.io/$GOOGLE_PROJECT/test-app:$IMAGE --platform managed

但是,它无法从错误开始

Cloud Run error: Container failed to start. Failed to start and then listen on the port defined by the PORT environment variable. Logs for this revision might contain more information.

日志中没有其他错误。

谢谢。

我从如何在与Docker一起使用时更改nginx的端口中获得了有效的解决方案

我创建了nginx.conf文件,将端口设置为8080并将服务器设置为0.0.0.0

# on alpine, copy to /etc/nginx/nginx.conf
user                            root;
worker_processes                auto;

error_log                       /var/log/nginx/error.log warn;

events {
    worker_connections          1024;
}

http {
    include                     /etc/nginx/mime.types;
    default_type                application/octet-stream;
    sendfile                    off;
    access_log                  off;
    keepalive_timeout           3000;
    server {
        listen                  8080;
        root                    /usr/share/nginx/html;
        index                   index.html;
        server_name             0.0.0.0;
        client_max_body_size    16m;
    }
}

并更新了Dockerfile来复制该文件。

FROM node:latest as node
WORKDIR /app
COPY . .
RUN npm install
RUN npm run build --prod

ENV PORT=8080

FROM nginx:alpine
COPY --from=node /app/dist/streamin-app/ /usr/share/nginx/html/
COPY nginx.conf /etc/nginx/
EXPOSE 8080
CMD ["nginx", "-g", "daemon off;"]
玛丽安·弗拉多伊

我认为与所有网络接口上的容器侦听有关。

根据官方文件:

Cloud Run服务无法启动的常见原因是容器内的服务器进程配置为侦听localhost(127.0.0.1)地址。这是指环回网络接口,该接口无法从容器外部访问,因此无法执行Cloud Run运行状况检查,从而导致服务部署失败。

要解决此问题,请将您的应用程序配置为启动HTTP服务器以侦听所有网络接口,通常表示为0.0.0.0。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

码头工人 错误:无法启动容器:端口已被分配

来自分类Dev

Docker容器无法在启动时启动

来自分类Dev

由于无法运行ps ax错误而无法在Docker容器中运行Meteor应用程序

来自分类Dev

无法启动Docker容器

来自分类Dev

无法在lubuntu上启动docker-“无法启动容器:exec格式错误”

来自分类Dev

运行时错误:无法启动服务器

来自分类Dev

Docker容器无法启动

来自分类Dev

使用mvn spring-boot遇到错误:运行“子容器无法启动”

来自分类Dev

无法启动lxc容器

来自分类Dev

云功能Firebase无法正常运行

来自分类Dev

Firebase云功能无法正常运行?

来自分类Dev

nginx:Docker容器无法启动

来自分类Dev

GCP云功能冷启动错误,重试

来自分类Dev

云运行和发布容器

来自分类Dev

无法启动lxc容器

来自分类Dev

无法启动云时代的经理代理

来自分类Dev

Ubuntu磁盘启动错误“如果启动器在容器中运行,则会启动跟踪[失败]”

来自分类Dev

LXD无法启动容器

来自分类Dev

Azure云服务启动任务未运行

来自分类Dev

Terraform无法启动jenkins容器?

来自分类Dev

Kubernetes拒绝使用rkt,容器无法启动,错误的systemd错误

来自分类Dev

无法运行简单的Docker容器

来自分类Dev

CLI 容器未运行 Hyperledger 1.0 无法启动(无 TLS)网络

来自分类Dev

提交 AWS Batch 作业时出现无法启动容器错误

来自分类Dev

容器启动后运行命令

来自分类Dev

Docker for windows 错误:无法启动服务 spark: 容器

来自分类Dev

无法启动容器错误:API 错误(400):OCI 运行时创建失败:container_linux.go:348

来自分类Dev

谷歌云机器学习错误:无法启动 gRPC 服务器

来自分类Dev

Terraform 的 Docker 容器无法启动

Related 相关文章

热门标签

归档