質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.34%

  • Go

    312questions

    Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

  • Google App Engine

    93questions

    Google App Engineは、Googleの管理するデータセンター上でウェブアプリケーションの開発が可能なクラウドコンピュータ技術です。Java、Python、Go用にSDKが用意されています。

GAE/Goでデプロイ出来ない

解決済

回答 1

投稿 2017/12/04 21:48 ・編集 2017/12/07 08:48

  • 評価
  • クリップ 0
  • VIEW 298

watch_n

score 43

 発生してる問題

GAE初心者です。GAE/Goでデプロイができません。
ビルドは完了するのですが、serviceのアップデートに時間がかかりすぎてtimeoutになってしまいます。
importするpackageをhttprouterのみにすると成功するので、外部packageの問題だと認識しています。
GAEはsyscall や unsafeパッケージのインポートが許されていないことは調べて分かりました。
golang.org/x/sys/unixをインポートしているので、これが原因なのでしょうか??
以下にて現状をお伝えするので、GAE/Goのよくある問題等、ヒントになる情報が欲しいです。
もし少しでも気になったことがあったらコメントして頂けますでしょうか??
よろしくお願い致します。

 ディレクトリ構成

app.yamlはルート配下のappディレクトリに置いてあります。

![イメージ説明

 app.yaml

runtime: go
env: flex
api_version: go1.8
manual_scaling:
  instances: 1
resources:
  cpu: 2
  memory_gb: 2.3
  disk_size_gb: 20
readiness_check:
  app_start_timeout_sec: 3600
beta_settings:
  cloud_sql_instances: "インスタンス接続名"

 エラーメッセージ

ERROR: (gcloud.app.deploy) Operation [apps/profect_id/operations/24c2d890-3bb4-4c72-b037-e7cb57f85b7f] timed out. This operation may still be underway.

 インポートしている外部package

github.com/jinzhu/inflection
github.com/jinzhu/gorm
github.com/go-sql-driver/mysql
github.com/jinzhu/gorm/dialects/mysql
github.com/julienschmidt/httprouter

 デプロイツール

  • gcloud app deploy
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • watch_n

    2017/12/08 13:31

    解決しました!長らくアドバイスして頂きありがとうございました!!

    キャンセル

  • mattn

    2017/12/08 14:45

    もしよかったら後の人がここみて解決できる様に、ご自分の回答を作るといいかもしれません。

    キャンセル

  • watch_n

    2017/12/08 16:02

    ありがとうございます。後ほど作らせて頂きます。

    キャンセル

回答 1

check解決した方法

+1

 原因

Updated health checksを有効にしているのにも関わらず、readiness_check のエンドポイントを設定していないのが原因でした。

 GAEのヘルスチェック

GAEにはLegacy health checksUpdated health checksがあり、今回Updated health checksを有効にしていました。

 Updated health checks

Updated health checksは以下の2つを確認します。

 Liveness checks

VMとDockerコンテナが実行中であることを確認する

 Readiness checks

インスタンスがリクエストを受け入れられる状態かどうかをチェックします

今回は、上記のReadiness checksのエンドポイントをアプリケーションで設定していなかったため、サービスをアップデートする事ができませんでした。

*間違いがあったらご指摘お願いします。

投稿 2017/12/08 17:04

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

15分調べてもわからないことは、teratailで質問しよう!

ただいまの回答率

91.34%

関連した質問

同じタグがついた質問を見る

  • Go

    312questions

    Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

  • Google App Engine

    93questions

    Google App Engineは、Googleの管理するデータセンター上でウェブアプリケーションの開発が可能なクラウドコンピュータ技術です。Java、Python、Go用にSDKが用意されています。