現在読んでもらっているこのブログはGatsyを使用して運営しています。
執筆者になるのは株式会社KASUGAに関わってくれている方はだれでもといいと思っているので、環境構築が簡単なのはどれだと考えたときに、とりあえずDockerを使ってみようと調べてみた次第です。
軽い気持ちでDocker化しようとしましたが、ちょっとした問題にあたり解決策にたどり着くまでに時間がかったのでメモとして残しておきます。
結論
環境変数INTERNAL_STATUS_PORT
を設定してGatsbyを起動する。以上です。
issueとPullRequestを見てもらえればわかるのですが、公式のドキュメントやcliのオプションとは明示されていないので困ります・・・
なぜportの設定が必要かというと、開発時にはsocket.ioを使ったwebsocketの通信がGatsbyでは使用されていますが、そのportがランダムに設定されしまいブラウザからの通信がコンテナ内の開発サーバーに届かないからです。
あんまりGatsbyをDockerコンテナで開発しようとする人はいないかもしれないですが、もしもの時に参考になればいいなと思います。