Help us understand the problem. What is going on with this article?

Google Cloud ShellでApp Engine DevServerを動かす

Google Cloud Shell?

Cloud ShellはDevelopers Consoleの機能の1つで、Debian-based LinuxのShell環境を貸してくれる機能です。

gcloud sdkを始めとして、色んなtoolを最初からインストールしてくれているので、軽く何か試そうという時に便利な環境です。

DiskもUser毎に5GB使えるようになっているので、git cloneしたり、Cloud StorageやBigQueryのExport結果を、Diskに保存することができます。
ただ、$HOME以外はCloud Shellを再起動すると初期化されるので、注意してください。

何がインストールされているかは、Available toolsに書いてあります。
適当に抜粋してみます。

Available tools

  • bash
  • sh
  • Google App Engine SDK
  • Google Cloud SDK
  • Emacs
  • Vim
  • Nano
  • Gradle
  • Make
  • Maven
  • npm
  • nvm
  • pip
  • Git
  • Mercurial
  • Docker
  • iPython
  • MySQL client
  • gRPC compiler

Language support

  • Java
  • Go
  • Python
  • Node.js
  • Ruby
  • PHP

GCP上で開発する時に使いそうなものは、それなりに入っている感じです。
追加でインストールとかもできますが、$HOME以外はクリアされてしまうので、apt-getとかでインストールすると、Cloud Shellを再起動すると消えてしまいます。

Quickstart

Developers Consoleを開いて、ぽちっとボタンを押せば完了です

Home_-_cp300demo1_and_Google_Cloud_ShellでApp_Engine_DevServerを動かす.png

Price

2016年中は無料で提供できるらしいです。
こういう機能はスパマーとの兼ね合いで料金が変わったりすることがあるので、2017年も無料で使えるように祈りましょう。

Web Preview

Cloud ShellにはWeb Previewという機能があります。
これは、Cloud Shell上でWeb Serverを立ちあげて、アクセスすることができる機能です。
試しにApp EngineのDev Serverを立ち上げてみます。

Python

まず、github上にあるApp Engineのサンプルプロジェクトをcloneします。

git clone https://github.com/GoogleCloudPlatformTraining/cp100-appengine-memcache-python.git

後は、app.yamlがある場所で、dev_appserver.pyを実行すれば、8080portでDev Serverが立ち上がります。

cd cp100-appengine-memcache-python
dev_appserver.py .

後は、Cloud Shellの左上にあるボタンをクリックして、Preview on port 8080を選べばブラウザで表示することができます。

Home_-_GCPUG_and_Google_Cloud_ShellでApp_Engine_DevServerを動かす.png

https___8080-dot-1978286-dot-devshell_appspot_com__authuser_0.png

Java

Javaも基本的に流れは同じはずなのですが、なぜかブラウザでの表示がうまくできませんでした。

サンプルプロジェクトをgit clone

git clone https://github.com/GoogleCloudPlatformTraining/cp100-appengine-memcache-java.git

mavenでDev Serverを起動

cd cp100-appengine-memcache-java
mvn appengine:devserver

Cloud Shellの左上にあるボタンをクリックして、Preview on port 8080を選べばブラウザで表示するとエラー・・・。

Home_-_GCPUG.png

https___8080-dot-1978286-dot-devshell_appspot_com__authuser_0_error.png

上記はmavenでやってますが、App Engine SDKにあるdev_appserver.shでやるとどうかな?と思い試そうとしましたが、command not found. App Engine Java SDKは入っているのですが、dev_appserver.shはハブられているよう・・・。

おまけ

もちろん、App Engineのデプロイもできます。

Python

cd cp100-appengine-memcache-python
appcfg.py -A cp300demo1 -V example update . --noauth_local_webserver

Java

デプロイは普通にJavaもできます。

cp300-gae-memcache-java/src/main/webapp/WEB-INF/appengine-web.xml<application>を自分のGCP Projectのものに修正してpom.xmlがあるpathで以下を実行すればデプロイされます。

mvn appengine:update
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした