Laravelの開発環境を立ち上げる時にいくつかやることがあります。 私は主に下記です。PostgreSQLとRedisはPC起動時に自動で起動するようにしています。
php artisan serve npm run dev minio server ~/minio-storage --console-address :9001 mailpit
これを毎回実行するのはめんどくさいですし、忘れてしまいますので、tmuxで自動起動するようにしました。 これをプロジェクトのlocal/start.shとして保存します。
#!/bin/bash # セッション名を設定 SESSION_NAME="laravel-dev" # 既存のセッションを終了(オプション) tmux kill-session -t $SESSION_NAME 2>/dev/null # 新しいセッションを作成 tmux new-session -d -s $SESSION_NAME # ウィンドウを分割 tmux split-window -h tmux split-window -v tmux select-pane -t 0 tmux split-window -v # コマンドを各ペインで実行 tmux select-pane -t 0 tmux send-keys "php artisan serve" C-m tmux select-pane -t 1 tmux send-keys "npm run dev" C-m tmux select-pane -t 2 tmux send-keys "mailpit" C-m tmux select-pane -t 3 tmux send-keys "minio-start" C-m # セッションにアタッチ tmux attach-session -t $SESSION_NAME
あとはプロジェクトのルートに移動して、下記を実行します。
sh local/start.sh
これで簡単に環境の立ち上げができるようになりました。