2017-04-15 34 views
1

を以前のバージョンを削除していない私は、Google App Engineの上のNode.jsアプリケーションを実行している私のコードをデプロイするには、次のコマンドを使用しています:のgcloudアプリのデプロイが

gcloud app deploy --stop-previous-version 

私の希望の動作は、以前のバージョンを実行しているすべてのインスタンスのためにあります終了することができますが、彼らは常に周りにこだわるようです。私は行方不明のものがありますか?

私は彼らがトラフィックを受信して​​いないことを知っていますが、私はまだ彼らのために払っており、彼らはいくつかのバックグラウンドテレメトリノイズを引き起こします。このコマンドを実行するより良い方法はありますか? gcloud app instances list

出力例: enter image description here あなたが見ることができるように、私が実行している2つの異なるバージョンを持っています。

+0

あなたの情報に基づいて問題の内容を正確に伝えるのは難しいです。 – Hedam

答えて

2

Google App Engineの無料クレジットは、その後の導入ではクリアされなかった誤ったフレキシブルインスタンスのため、30日以内に偶然ぶつかってしまいました。私たちが原因としてそれを特定したとき、それは基本的にアイドリングしていた4つの同時インスタンスにスケールアップしました。

TL; DR:使用バージョン名を指定するために展開--versionフラグ。同じバージョンの既存のインスタンスは、次に展開するときにに置き換えられ、 になります。

それは私にウサギの穴である--stop-previous-versionを導いた。これまで私が今までに見つけたことは次のとおりです。

--stop-previous-versionはもうサポートされていないようです。 フラグgcloud app deploy reference pageに記載されていますが、すべてのフラグがリストされているページの上部を見ると、どこにも見つかりません。

このフラグを設定してデプロイを試行しましたが、何が起こるかはわかりましたが、一見何の効果もありませんでした。新しいバージョンがまだ作成されていましたが、古いインスタンスを手動で削除する必要がありました。

gcloud-maven-plugin repoにはGithubの問題がありますが、これは特にこのプラグインの問題としてこの問題を呼び出していますが、問題は一見無視されています。

この時点で私たちの最良の賭けは、--version=stagingまたは何でもgcloud deploy appに追加することです。

--version = VERSION、-v VERSION

そのアプリのバージョン:そのフラグのためのリファレンスドキュメントはそれが「バージョン」を共有し、既存のインスタンスを置き換えますことをことを示しているように見えますこの展開によってが置き換えられ、が置き換えられます。バージョンを指定しない場合は、バージョンが生成されます。

(強調鉱山)

また、Google独自のreference documentation on app.yaml(Pythonのドキュメントへのリンクだが、それはまだ関連だが)、具体的デプロイするときにバージョンを指定するには、「好ましい」方法として--versionフラグを呼び出します。

推奨されるアプローチは、あなたのapp.yamlファイルからバージョン要素を削除し、代わりに、お使いのバージョンID

を指定するには、コマンドラインフラグを使用することです210
関連する問題