AWS(EC2)再起動後にやることチェックリスト(Next.js / Spring Boot)
EC2インスタンスを停止・再起動するとパブリックIPv4アドレスが変わるため、フロント・バックエンド・転送処理のすべてで設定値の更新が必要。手順の漏れを防ぐための備忘録。
1. AWS環境の確認
- AWSコンソールでEC2インスタンスを開始する
- 新しい パブリック IPv4 アドレス を控える
2. バックエンド(Spring Boot)の修正 & ビルド
-
接続許可するフロントエンドのIPアドレスを新しいものに更新する
-
Controllerクラスの@CrossOriginアノテーション -
WebConfig.javaの CORS設定(allowedOrigins)
-
-
ローカルでビルドを実行し、最新の
.jarを生成する./mvnw.cmd clean package -DskipTests
3. フロントエンド(Next.js)の修正 & SCP準備
-
.env.productionのAPI接続先URL(Spring BootのIP)を新しいものに更新する - ローカルでビルドを実行し、エラーが出ないか最終確認する
-
EC2へ送信する
frontend-prodディレクトリ(本番用)を用意する -
【重要】 送信対象から不要な以下を物理削除する(コンテナビルドのバグ防止)
-
.nextフォルダ -
node_modulesフォルダ
-
4. SCPによるEC2へのファイル送信(Windows側で実行)
- SCPコマンドの接続先IPアドレスをすべて新しいものに書き換える
-
frontend-prod一式を送信するscp -i "~/key" -r "~/frontend-prod" username@IPv4Address:path -
最新の
.jarファイルをbackend-prod/target/へ直接送信するscp -i "~/key" ".jar" username@IPv4address:path -
docker-compose.ymlを送信する(修正がある場合のみ)
5. EC2(Docker)での起動確認(Tera Term側で実行)
-
コンテナをビルド・起動する
docker compose up -d --build -
ブラウザから
http://新しいIPアドレス:3000でNext.jsの画面にアクセスできるか確認する