【问题标题】:Gcloud Angular 6 app deployment taking extremely longGcloud Angular 6 应用程序部署需要很长时间
【发布时间】:2020-06-21 18:48:21
【问题描述】:

我试图将我的 Angular 项目部署到 gCloud,并按照此处提到的步骤 https://medium.com/@st_yuri/how-to-deploy-an-angular-8-application-and-a-python-3-flask-restplus-api-on-google-cloud-using-ebbed60e665f 并运行以下命令。

 gcloud app deploy 

我的应用程序开始部署,但速度非常慢,由于某种原因,我看到有 32000 个文件正在上传。这是第一次部署,这是正常的还是我错过了什么。现在已经运行了 3 个小时,进展甚微。

我的app.yaml文件如下

runtime: python37
api_version: 1
handlers:
- url: /.*
  static_files: dist/index.html
  upload: dist/index.html

【问题讨论】:

    标签: web-deployment gcloud


    【解决方案1】:

    至于您的指南,您必须在 app.yaml 中添加 skip_files 部分。比如:

    skip_files:
      - node_modules/
      - ^(.*/)?app\.yaml
    

    我建议你使用我最近使用的指南https://dev.to/marwan01/deploy-an-angular-app-using-google-cloud-run-3p4a

    在 Google Cloud 上,您使用 Cloud Run

    你必须创建 Dockerfile

    FROM node:12-slim
    WORKDIR /usr/src/app
    COPY package*.json ./
    RUN npm install -g @angular/cli
    RUN npm install
    COPY . ./
    RUN npm run build
    EXPOSE 8080
    CMD [ "node", "server.js" ]
    

    server.js

    var express = require('express');
    var app = express();
    app.use(express.static('dist/PROJECT-NAME'));
    app.get('/', function (req, res,next) {
    res.redirect('/');
    });
    app.listen(8080)
    

    然后https://cloud.google.com/sdk/install

    gcloud builds submit --tag gcr.io/PROJECT-ID/SERVICE-NAME
    gcloud run deploy --image gcr.io/PROJECT-ID/PROJECT-NAME --platform managed
    

    那个。

    node_modules 是你的 32000 个文件。 看看该指南中的第 5 节。上面有带有 node_modules 的 .dockerignore。这意味着您不会将其上传到云端。

    如果您使用该指南并有任何问题,我可以提供帮助。

    【讨论】:

    • 当然感谢您的建议,如果我有任何疑问,我会尝试并回复您。一旦我能够看到我的部署,将接受这个答案。谢谢!
    • 是否也有类似的东西可以通过 python 后端代码部署?另外,非常感谢!这真的很有帮助。
    • 我相信你使用flask作为python服务器? medium.com/@doedotdev/… 您可能必须像该教程那样制作 DockerFile,而不是 server.js,您将创建 app.py。其他一切都应该像你为 Angular 所做的那样工作
    • 是的,使用flask作为python服务器,也会尝试相同的步骤。两个问题:1)如何让 Angular 应用程序引用烧瓶 API 路由? 2)如果我必须推送任何新代码,我是否必须再次遵循整个过程?
    • 另外,当我为我的角度部署运行“gcloud run deploy --image gcr.io/PROJECT-ID/PROJECT-NAME --platform managed”命令时。它给出了这个错误:错误:(gcloud.run.deploy)云运行错误:容器无法启动。无法启动并侦听 PORT 环境变量定义的端口。此修订的日志可能包含更多信息。知道如何解决吗?
    猜你喜欢
    • 2017-12-01
    • 1970-01-01
    • 2018-08-13
    • 2022-11-01
    • 1970-01-01
    • 2010-12-19
    • 2011-03-20
    • 1970-01-01
    • 2020-08-21
    相关资源
    最近更新 更多