やっと動いた…!初めてのブログアプリをRenderにデプロイした日
MacでJava開発、ついにここまで
ついこの前まで、JavaでWebアプリを作るなんて夢のまた夢だと思っていました。
HTMLとJavaScriptしか知らなかった頃の自分からすれば、「ログイン機能付きのブログアプリを自分で作って、しかも本番環境にデプロイした」なんて、正直かなりの成長です。
今日はその初めての個人開発の記録として、Java(Spring Boot)製ブログアプリをMac環境で開発し、Renderにデプロイできるようになるまでをまとめておこうと思います。
ローカルでの開発:最初の一歩は地味でも大事
Spring Bootでプロジェクトを立ち上げ、最初に表示された「Whitelabel Error Page」を見たときは、「ああ、自分で全部作らないといけないんだな」とちょっと絶望しました。
でも、それと同時に、「これは完全に自分の自由な領域なんだ」とワクワクもしていました。
開発の過程では、ChatGPTに何度も助けられました。
- Spring Securityの設定で「ログインできない…」と詰まったとき
- ControllerやRepositoryの書き方が不安なとき
- エラーが読めなくて一歩も進めなかったとき
質問を投げると、わかりやすいヒントやサンプルコードを返してくれて、ただの検索よりも一歩深く理解できた感覚があります。
Gitとの出会い:バージョン管理ってすごい
今回、Gitでの管理とGitHubとの連携も人生初でした。
「とりあえずコードはフォルダに保存」みたいな自己流のやり方から、
ちゃんとバージョン管理ツールを使ってコードの履歴を残せるようになったことも、個人的には大きな一歩です。
コミットの粒度や、どのタイミングでプッシュすべきかなど、まだ慣れていない部分もありますが、
GitHubにコードが残っていくことで「積み重ねてる実感」が得られるのが嬉しかったです。
Renderとの連携もGitHub経由だったので、自然と学ぶきっかけになりました。
実装した機能たち
- ユーザー登録画面/ログイン画面の作成
- パスワードの保存方式や認証の処理(Spring Security)
- 投稿の作成・表示機能
- ログイン済ユーザーだけが投稿できるように制御
ここまでで、ローカル上では「ユーザー登録→ログイン→投稿→投稿一覧表示」までが一通り動くようになりました。
本番環境へのデプロイ:Renderを使ってみた
次に試したのが、Renderへのデプロイ。
最初は「Dockerが必要?」「GitHubとの連携?」「MySQLどうするの?」と不安でしたが、意外とスムーズ。
無料プランで使えるRenderのWebサービスは、Spring Bootとの相性も悪くなかったです。
環境変数の設定やDBの接続設定に少し苦戦したものの、無事に動作確認ができたときは、
「本当にこれ、ネットに公開されてるんだ…」と画面を何度もリロードして確認してしまいました。
作ってみて気づいたこと
- 「動くものがある」だけで自信につながる。
- フルスクラッチで積み上げることの大切さ。
- デプロイって怖くない。
-
AIに頼っていい。
自分ひとりでは進まなかった場面も、ChatGPTに頼ることで前に進めた。
ある意味、初めての「ペアプロ」体験だったかもしれない。 -
Gitは全エンジニアの味方。
コードの履歴を残すこと、変更を振り返れること、こんなに便利だとは思わなかった。
次はどこを伸ばす?
- 投稿に画像アップロード機能を追加
- 投稿編集・削除機能の追加
- ログイン状態のセッション管理やユーザーごとの表示制御
- テストコードを書いてみる!
最後に:エンジニア初心者でも、作れる
「自分にはまだ早いかも」と思っていたけど、
やってみれば、わからないことを調べて、試して、失敗して…その繰り返しで、少しずつ動くものができてきました。
ChatGPTの力も借りながらではあるけれど、確かに自分の手で作ったアプリです。
GitHubにコードを残せたことも、自分にとっては初めての「開発者の一歩」だったと思います。
これを見た誰かが「自分も作ってみようかな」と思ってくれたら嬉しいです。
Discussion