8

Googleカスタムランタイムを使用してノード4アプリケーションの管理対象VMを作成しようとしています。Google管理対象VMを作成しようとするとタイムアウトエラーが発生する

私は、次のDockerfile作成:このapp.yamlを伴い

FROM node:4.2.1 

ENV PORT 8080 

ADD package.json package.json 
RUN npm install 
ADD . . 

CMD [ "npm", "start" ] 

を:

# [START runtime] 
runtime: custom 
vm: true 
api_version: 1 
# [END runtime] 

health_check: 
    enable_health_check: false 

skip_files: 
- ^(.*/)?#.*#$ 
- ^(.*/)?.*~$ 
- ^(.*/)?.*\.py[co]$ 
- ^(.*/)?.*/RCS/.*$ 
- ^(.*/)?\..*$ 
- ^(.*/)?.*/node_modules/.*$ 
- ^(.*/)?.*\.log$ 

私はのgcloudプレビューコマンドを使用してアプリケーションをデプロイします

gcloud preview app deploy app.yaml --promote 

それはのように思えますドッカーは正しく構築されていますが、プロセスの最後に私はこのメッセージを受け取ります:

Copying files to Google Cloud Storage... 
Synchronizing files to [gs://staging.my-project-id.appspot.com/]. 
Updating module [default]...\Deleted [https://www.googleapis.com/compute/v1/projects/my-project-id/zones/us-central1-f/instances/gae-builder-vm-20151030t142257]. 
Updating module [default]...failed. 
ERROR: (gcloud.preview.app.deploy) Error Response: [4] Timed out creating VMs. 
+0

この問題は解決しましたか? – Kamran

+0

まだ、コードがデプロイされたようですが、それでも、タイムアウトエラーが – idoshamun

+0

を返された私も私にとっての問題は、新しいApp Engineのプロジェクトを作成することです解決何 – nicholasf

答えて

2

私は今すぐ配備しています。私は別のプロジェクトの前に同じ問題をトラブルシューティングしなければなりませんでしたが、コードを手元に持っていなかったので、もう一度問題を解決しなければなりませんでした。

モジュールの更新がタイムアウトになる最後のステップまで、展開がスムーズに実行されました。これは、VMで起動し、適切に応答しないアプリケーションと関係があると思ったので、最終的なフックがタイムアウトします。

ここには多くの情報があります(https://cloud.google.com/appengine/docs/managed-vms/config)。

  • ログ - 正しいログファイルに書き込んでいることを確認してください。あなたがそれを使用していない場合は、健康チェックをオフにし
  • ファイル
  • を不要node_modules全体にコピーするか、またはログインするためのプロセスを求めていないので、 https://cloud.google.com/appengine/docs/managed-vms/custom-runtimes#logging
  • あなたは.dockerignoreファイルを持っているし、app.yamlを内のファイルをスキップしていることを確認を参照してください、または適切なexpress.jsルートが設定されていることを確認してください。
  • 環境変数が設定され、GAEが使用できるものと一致することを確認してください。これが私の最後のステップだった - GAEは、あなたが、私は8080と3000でない
  • リフトを使用するようにアプリを告げ、私のapp.yamlでNODE_ENVフラグを通じてのリソースを渡すために持っていた8080上のVMポートにバインドできるようになりますapp.yamlのGAEインスタンス。私は2つの論理CPUを指定し、ラム2ギグを行いました。

幸運。

+2

...この問題に実行しているものの最新バージョンのnode.jsとnpmがインストールされています。 – idoshamun

+0

「ことを確認し、実際に –

+0

は「あなたがそれを使用していない場合は、健康チェックをオフにし、またはあなたはそれのために構成された正しいexpress.jsルートを持っていることを確認」あなたは私はそれについて興味が?その上で展開する、またはいくつかの参照を追加することができます。 – natario

関連する問題