fc2ブログ
GoogleAppEngineLauncherからGoogle Cloud SDKへ
すごい久しぶりの更新。

Google App Engineが、Google Cloud Platformサービスの一環になって、GUIで便利に使えるGoogleAppEngineLauncherが、どうも置いて行かれている雰囲気を薄々感付いてはいたのですが、重い腰を上げ、Google Cloud SDKを使って見ることにしたので、メモしておきます。

まずは、ダウンロードしてインストール。
https://cloud.google.com/sdk/docs/quickstart-mac-os-x
あたりから、とってきます。解凍した場所がそのままファイルの置き場所になるので、~/Downlodsとかにならないように注意しましょう。

そもそも、Python3で動かないあたりもちょっと不満なんですが、install.shを起動するまえに、環境変数を整備します。

export CLOUDSDK_PYTHON="/usr/bin/python2.7"

パスは適当に変更してください。

$ ./install.sh

でインストール出来ます。.bash_profileを書き換えるので、シェルの再起動か、sourceコマンドで読み込み直します。
いろいろごちゃごちゃ言われるかも知れませんが、App Engineの設定だけなら以下で。

$ gcloud components install app-engine-python

まずは初期化。

$ gcloud init

すでにGAEのプロジェクトをいくつか持っているとその一覧が表示されるので、番号で選びます。Launcherと違って、ちょっと面倒。

ちなみに、プロジェクトを変更したいときは、
$ gcloud config set project プロジェクト名

いまどのプロジェクトにいるのかは、以下で分かります。
$ gcloud config list

さあこれで開発ができると思ったら大間違い。ローカルで開発用のサーバを動かすためのPythonスクリプトが、2専用。Googleは、Pythonから離れようとしているんじゃないか?と疑わせる、3のサポートの悪さです。

仕方無いので、condaで2の環境作ります。

$ conda create -n py27 python=2.7

設定が終わったら、2の環境を起動。
$ source activate py27

ちなみに、一覧を見るには、
$ conda info --envs

これで、やっと、ローカルの開発用サーバが動きます。Launtherのが数倍楽・・・。
動かすアプリのapp.yamlがあるディレクトリで、

$ dev_appserver.py .

アプリを作って、デプロイするときは、以下のコマンドで。

$ gcloud app deploy

サーバのページを開きたいときは、これが使えます。

$ gcloud app browse

ちなみに、Googleのサーバ上で始めてしまったプロジェクトを、gitでcloneするのは、以下。

$ gcloud source repos clone python-gae-quickstart --project=プロジェクト名

ファイルをローカルで変更した後、もちろん、コミットしてもいいんでしょうが、deployすると、そのまま上がります。

Cloud Platformになって、進化している部分もあるようで、StaticなWebをホストする方法が以前より、簡単になっているようです。(これはまだ試してませんが)
https://cloud.google.com/appengine/docs/python/getting-started/hosting-a-static-website

ちなみに、古いプロジェクトを、そのままデプロイしようとすると嵌まります。正しいのかどうか分かりませんが、app.yamlから、以下の2行を削除すると、動くようです。
#application: プロジェクト名
#version: 1

ちゃんとした移行ドキュメントがそのうち出るという噂を、どっかで見ましたが、早く出て欲しいものです。
スポンサーサイト



【2017/01/22 20:33】 | Webサービス | トラックバック(0) | コメント(0) | page top↑
| ホーム |