よく使う開発環境構成を1コマンドで作成できるようにした

よく使う開発環境構成を1コマンドで作成できるようにした

困りごと

laravelやReactNativeなど、自分がよく触る開発環境の開発構成はフレームワークごとにおおよそ同じであるにも関わらず、毎度イチから dockerfile作って、フォルダ切ってnginx設定して… みたいな作業が正直とても面倒で。
なんとかしたいなと思ったのでtry中のことを記載します。

前提

  1. コマンド一発叩けば自分のよく使う構成で開発環境が整う
  2. どのPCやVPSを使っても同じことが直ぐにできる
特に2.は自分の中で結構重要で、個人PCのスペックがとてもよろしくないので、conohaVPSやamazon EC2に環境を作ってiPadからssh接続して開発するスタイル(最近はcodespacesが便利すぎるのでそっち使っていますが)だったので、インスタンスを作り直すたびにはじめから何かしら設定し直すのは避けたかった。

やったこと

成果物

まずは成果物から。
下記のgithubリポジトリを作成することで解決しました。
各開発環境をフォルダごとにまとめており、init.shに作成したいフレームワーク名を引数にとって実行することで必要なフォルダをDLするようにしました。

curl -o- コマンドを使う

curlには便利な-o-オプションがあります。 指定したURLの中身を標準出力するオプションで、これをbashにパイプして使ってあげると、手元にファイルをダウンロードしなくても実行することができます。
curl -o- https://hogehoge.com/repo/install.sh | bash
なので、リポジトリ上のinit.shを指定して、
curl -o- https://raw.githubusercontent.com/shabaraba/setup-develop-environment/main/init.sh | bash -s laravel
な感じで環境構築ができるようになりました!

終わりに

毎度面倒(かつ地味に時間がかかる)作業から開放されてとても晴れやかな気持ちです☺️