GCE)Tweetelectronで定期的にAPI取得・DBに保存・データ表示とかしようとしてましたが、前2つはクラウドでやった方が色々と楽で便利なんじゃないかと思いついた。AWSも最近放置気味なんで新しくGCPを触ってみることにしました。なんといっても無料枠がありますし。Free制限(日本語):各サービスのリミット。日本語は数値の抜けあり。サービス名称と概要DBと処理実行のサービスをざっと見る。Run:サーバレスコンテナ管理APIで取ったJSONをそのまま使えるNoSQL、せっかくなので新しいFirestore。処理は常駐型のものが欲しい。Functionsは無制限、GAEは最大24時間実行可能らしいので上手くやれば常駐にできるかも。しても無料枠には収まらない。普通にGCEを使うか。無料トライヤルの開始これをしなくてもFirestoreは使えたんですが、登録しないと使えないサービスもあったので登録してみる。必要なのはクレカと住所だけです。飽きてほったらかしになっても勝手に課金されることはないようですし、$300のフリークレジット付きでした。Firestoreよくわからないまま適当に作ってみる。コレクションとドキュメントはエンティティとインスタンスみたいなものか。同プロジェクトのGCEからであれば鍵はいらないかもしれませんが、ローカルでテストもしたいのでキーを作成します。「IAMと管理→サービスアカウント」にあるアカウントで「キーを作成」します。GCEAllwaysFreeの条件に即してOregonリージョン、f1-micro、30G標準ストレージ。gcloudを使うと良さそうだけど、まずは普通にSSHログインしてみる。~/.ssh/id_rsa.pubこの文字列をメタデータのSSH鍵に追加する。user_name@external_IPこれでログインできた。デフォルトではIPがエフェメラル(一時的)なので静的IPを割り当てる。インスタンスの編集からネットワークインターフェースを変更します。実はインスタンス作成時に指定できたけど折り畳みで気付かなかった。IPアドレス自体は「ネットワーキング→VPCネットワーク」で管理されます。AWSと同様にインスタンスに紐づけされない静的IPは課金対象みたいなのでGCEを止めるときには気を付ける。これで実行場所の確保はできた。FirestoreアクセスQuickStartを見ながらデータベースにアクセスしてみます。Goで書きましたがサンプルは変に略されてるので若干使いにくい。err)}fmt.Println(doc.Data())}}サンプルで作ったドキュメントをとってくることが出来ました。後は処理を書いてGCEに渡すだけです。コメントをキャンセルメールアドレスが公開されることはありません。