💬
GCPのGoogle Click to Deployで立ち上げたRedashのdocker-composeが反映されない問題
前置き
OSSのBIツールであるRedashの話です。
以前はクラウド版が提供されていましたが、Databricksに買収されることでサービス終了してしまいました。今でも根強いファンがいるツール、かつ圧倒的に他の競合サービスに比べて安いため、自社でホスティングして使用している会社も多いかと思います。
余談
買収されてOSSの開発も止まってしまったRedashですが、2023年4月にコミュニティ主導で開発が再開されることになりました。今もなお開発が続いているので、新バージョンのリリースに期待ですね。
起きた事象
GCPにはGoogle Click to DeployというワンクリックでVMインスタンスにサービスを立ち上げてくれる機能が用意されており、Redashもこれを使って簡単に構築することができます。
Redashを自社でホスティングしていると、バージョンを上げたり、パラメータを調整するために docker-compose.yml
をいじりたいということが多々あります。
Google Click to Deployは便利な一方で、ドキュメントが貧弱という弱点があり、サーバーの中にSSHしてファイルを探索して docker-compose.yml
をいじっても反映されないという問題がおきました。
そのときに実行していたコマンドは下記です。
$ vi /opt/redash/docker-compose.yml
$ docker-compose down
$ docker-compose up
解決策
いきなり結論ですが、 docker-compose.yml
の参照先が間違っていたことが反映されない原因でした。
-f
オプションでファイルを指定できることは知っていましたが、実は COMPOSE_FILE
環境変数でも使用する Composeファイルを指定できるようです。
$ echo $COMPOSE_FILE
/opt/redash/setup/docker-compose.yml
$ vi /opt/redash/setup/docker-compose.yml
$ docker-compose down
$ docker-compose up
ややこしいディレクトリ構造はやめてほしい...!
Discussion