0

Ich habe versucht, eine Angular2-Anwendung mit Google App Engine zu implementieren, und es sind Probleme aufgetreten. Ich erhalte die folgende Fehlermeldung, wenn einzusetzen versucht:Fehler beim Bereitstellen der Angular2-App in Google Cloud

scheint
Updating service [default]...failed.                           
ERROR: (gcloud.app.deploy) Error Response: [9] 
Application startup error: 
yarn start v0.21.3 
$ ng serve 
** NG Live Development Server is running on http://localhost:8080 ** 
52% building modules 357/395 modules 38 active .../position/overlay-position-builder.js 

Der Fehler @angular/material die Linie .../position/overlay-position-builder.js gegeben zu zeigen.

Ich baute die App mit @angular-cli.

Es gibt nichts von Wert in den Protokollen, die ich sehen kann.

Irgendwelche Ideen, was das Problem sein könnte und wie man das löst?

+0

Können Sie teilen die Schritte, die Sie unternommen haben, um zu dem Problem zu gelangen? –

+0

Um hierher zu gelangen, habe ich gerade 'gcloud app deploy' ausgeführt. Ich musste schon "@ angular/cli" bewegen: "1.0.0 "' in 'Abhängigkeiten 'zusätzlich zu' devDependencies' in 'package.json', da es ein Problem gab, dass' @ angular-cli' nicht installiert war und das Skript versuchte, 'ng serve' auszuführen und fehlzuschlagen Stellen Sie sicher, dass es kein Problem mit meiner App in Google Cloud gab. Ich habe das Beispielprojekt "cloud-cardboard-viewer" heruntergeladen und auf codeLabs.developers.google.com/codelabs/cloud-cardboard-view er/... bereitgestellt und bereitgestellt ohne Problem. Wiederum habe ich keine Probleme, lokal zu laufen. – rpc80

Antwort

0

PROBLEM: Die ERROR: (gcloud.app.deploy) Error Response: [9] typischerweise durch ein Abhängigkeitsproblem verursacht wird, die in einem Fehler von not found führt.

Dieses ähnliche Problem, oder sh: 1: ng: not found, wurde gemeldet und bearbeitet, indem Sie eine Dockerfile here erstellen. In diesem ursprünglichen Beitrag scheint yarn start v0.21.3 das Problem zu sein.


LÖSUNG: Ein Angular2 Projekt erstellt, indem die Winkel-cli verwendet, wird die Wurzel package.json Datei mit einem devDependencies Abschnitt wie im folgenden Beispiel enthalten:

"devDependencies": { 
    "@angular/cli": "1.4.2", 
    ... 
    ... 
}, 

HINWEIS: Um jeden andere Abhängigkeiten, wie @angular/material und Befehle wie yarn start v0.21.3 zu arbeiten. Das Dockerfile muss die Befehle enthalten, um diese Abhängigkeiten über die Befehlszeile zu installieren.

Neues app.yaml und Dockerfile im gleichen Pfad der package.json Datei wie im folgenden Beispiel:

angular2-example-app 
├── e2e 
├── node_modules 
├── src 
├── package.json 
├── app.yaml 
├── Dockerfile 

Die app.yaml Datei die folgenden Einstellungen benötigen: (app.yaml documentation):

# [start app_yaml] 
    runtime: custom 
    env: flex 

Die Dockerfile benötigt alle Befehle, die ein Benutzer in der Befehlszeile aufrufen kann, um ein Bild zu erstellen.

Hinweis:npm install -g @angular/cli Befehl sein RAN im Beispiel unten:

FROM alpine:latest 
MAINTAINER yourname 

# update alpine linux 
RUN apk update && apk upgrade && \ 
    apk add nodejs && \ 
    # may comment this line in my computer. 
    apk add nodejs-npm && \ 
    npm install -g @angular/cli 

# add source code to images 
ADD . /angular2-example-app 

# switch working directory 
WORKDIR /angular2-example-app 

# install dependencies 
RUN npm install 

# expose port 4200 
EXPOSE 4200 

# run ng serve on localhost 
CMD ["ng","serve", "--host", "0.0.0.0", "--disable-host-check"] 

Stellen Sie die App auf der Google Cloud App Engine: gcloud app deploy

(gcloud documentation)

Verwandte Themen