QRコードジェネレータをGKEからFirebase + Herokuに移行した。
GKEからFirebase + Herokuへ
こちらで作成したQRコードジェネレータを運用しているGCPの無料期間が切れてしまったため、移動先のホスティング先を検討していたところ、FirebaseとHerokuを組み合わせれば無料かつ簡単に移行できそうだったので実施しました。
Docker on Heroku
Goで書かれたAPIをHeroku上のDockerコンテナに移行しました。
公式の手順以外でやったこと
- Herokuデプロイ用のDockerファイルを新規作成
- 起動時はコマンドライン引数でポート番号を受け取りListenするように修正
注意点としては Listenするポート番号はHeroku側から指定された値を使う必要があるという点です。
expose
も使用することができません。
deploy heroku · yassun/crypto-qrcode-generator@59d7d0b · GitHub
Vue.js on Firebase Hosting
既存ではコンテナ上でbuildしたVue.jsをNginxに配置していたのですが、配置先をFirebase Hosting
に向けただけで特に何もしていないです。
$firebase init hosting
の際に public directory の場所を聞かれるので build先(デフォルトはdist
)に合わせるくらいでしょうか 。
deploy firebase · yassun/crypto-qrcode-generator@c2acb19 · GitHub
まとめ
フロントとバックエンドをそれぞれ別のコンテナにしていたことからホスティング先の選択肢が選べ、想定以上に簡単に移行することができ、コンテナベースで開発する恩恵を感じました。
無料枠では制限があるものの、検証用または簡単なサービスであれば十分すぎる環境かなと思います。