0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

AIイラストイベントカレンダー開発記録より
自分noteのコピー.png


💡 はじめに

この物語は、フロントエンドからバックエンドの沼へ落ちたAIクリエイターの記録です。

Viteで動く画面に満足していた私が、
Cloud Run、Docker、PowerShell、そして消えた.envに翻弄され、
最後には「未完成という名の悟り」を開くまでの72時間。

笑えるけど少し泣ける技術地獄を記録しました。


🧱 第1章:フロント勢が迷い込んだバックエンド沼

AIイラストイベントカレンダー。
――名前だけ聞くとロマンチックですが、中身はサーバー地獄。

最初は軽い気持ちでした。
Docker? 聞いたことある。
「環境構築が一瞬でできる魔法の箱」ってやつでしょ?

……実際は、箱の中で火事が起きてるのに外からは煙しか見えない感じです。

gcloud builds submit --tag gcr.io/project-id/ai-illustration-event-diary

ビルドは成功。
しかし次の瞬間――

The user-provided container failed to start and listen on port 8080.

いや、聴いて!
お願いだからポート8080の声を聞いて!

PowerShellは冷たく告げます。

No such file or directory

泣きながら npm run dev を打つ。
ready in 349 ms の文字が出た瞬間だけ、
自分が天才になった気がしました。


💥 第2章:成功ログが出るまでに費やした72時間

人は、デプロイが通る瞬間だけ神を信じる。

AIイラストイベントカレンダーを「世界に出す」と誓った私の前に立ちはだかったのは、
Cloud Runの沈黙でした。

Build succeeded
…でもURLを開くと 404 Not Found

え、君、成功って言ったよね?

再デプロイを繰り返す。
240秒の起動プローブの間に祈りを込めてログを読む。

PowerShellはまた冷たく言い放つ。

The container failed to listen on $PORT.

お願い、聞いて。8080の声を。

その瞬間、悟りました。

Dockerは“動くもの”ではなく、“動かすもの”。


🌅 三日目の朝

ついに成功ログが出た。

Server started on port 8080

涙が出ました。人類生存の境界72時間を生き抜いた気分
たぶん、睡眠不足のせいです。
それでも、確かに動いた。
そのとき初めて、バックエンドと心が繋がった気がしました。


🔍 第3章:消えた.envの謎を追え

バックエンドが動いたその朝、私は異変に気づきました。

“.env not found.”

え? 昨日までそこにいたよね?

犯人は「構造改革」でした。
読み込み時間を減らすため、我が相棒GPTが授けた必殺技
frontendbackend にフォルダを分け、
軽量化のために必要最小限だけ push。の技

でもDockerは現実主義者。
COPY . . の対象は backend ディレクトリ内だけ。
ルートに置いていた .env は、存在しないものとして扱われました。

Cloud Run の環境変数GUIも冷淡です。
ビルド中の .env は見てくれない。


💣 indexがない? jsonがない? それ私が消しました。

読み込みを軽くしたい一心で、
index と package.json を削除
軽くなった……と思ったら、画面真っ白。

Cannot find module './index.js'
Missing package.json

……あれ? これ、もしかして自分で.envも消してない?

静かに笑いました。
失敗の数だけフォルダが増える、それが成長です。


⏳ 第4章:ポートは開いた、でも心は閉じた

ロードが回り続ける。
“Loading…”
あの文字は、開発者の心のメトロノームです。

データは取れている。
でも表示されない。
サーバーは応答している。
でもフロントは沈黙している。

その間に淹れた紅茶は3杯。全部冷めました。


🕐 タイムアウトと共に生きる

Cloud Run の起動プローブは 240 秒。
長いようで短い。
タイムアウトするたび、Google が小さく首を振る。

でも、もう焦らない。
ログを読むだけで救われる。

“failed” という文字が、むしろ “生きてる証拠” だから。

index を直し、json を戻し、env を再生しても、
まだ作業は続く。

ルーティング、キャッシュ、画像URLの最適化……。
完成という言葉は、いつだって幻だ。


🎧 エンディング・ラップ

Port is open, 心はclosed  
ロードの渦で todayもlost  
Logが囁く 「また失敗」  
でも笑える だって Try Try Try  

.env戻っても終わらねぇ  
修正地獄も今日のメイン  
涙でDeploy 夜は明ける  
未完成、それが Life of Coder

📘 まとめ:未完成という名の進行形

Dockerが教えてくれたのは「環境の大切さ」。
PowerShellが教えてくれたのは「冷静な怒号」。
Cloud Runが教えてくれたのは「忍耐」。
そして、消えた.envが教えてくれたのは「油断」。

AIイラストイベントカレンダーは、まだ完成していません。
でも、エラーが返ってくる限り、それは生きているアプリです。

成功のログは出た。
けれど、作業はまだ続いてる。

それが、私の現在です。


💬 To Be Continued in Localhost...
──ロード中のバーが止まるその日まで。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?