prodnote.dev本番ノート

目的から探す・全13記事

記事一覧

選ぶ・公開する・設定する・運用する。いま必要な判断や手順から読めます。

VPS・容量を選ぶ

契約条件と実測を分けて、候補を絞る。

VPSは2GBで足りるか — 稼働46日目の平常時を実測

ConoHaの2GB VPSで6コンテナを動かし、VPS稼働46日目の平常時メモリを実測。後日のビルドも1回成功しました。4GBは未測定として、稼働時とビルド時を分けて容量を考えます。

PRVPSConoHa VPSDocker

公開先を決める

VPSを借りる道と、借りずに公開する道。

Railway をやめて VPS にした — Compose はそのまま動かない

PaaS と VPS で迷っているなら、選ぶ前に読んでほしい話です。Railway はデプロイが通るのにアプリが起動せず、結局 VPS に移しました。公式ドキュメントには、docker-compose.yml をそのまま実行しないと最初に書いてあります。

PRRailwayVPSDocker Compose

VPSをやめてNext.js静的エクスポートをCloudflare Pagesへ

稼働中のVPSに2つ目のサイトを同居させようとして、メモリと既存nginxの設定変更がリスクになると分かった。Next.jsのoutput:exportで静的化してCloudflare Pagesに置くまでの構成と、ビルドで踏んだ2つのエラーの記録。

Next.jsCloudflare Pages個人開発

借りたあとに設定する

初期設定から、鍵・ドメイン・HTTPSまで。

VPSを契約したらやる初期設定4つ — 自分を閉め出して覚えた

VPSを契約した直後にやる初期設定を、順番と理由つきで書きます。作業用ユーザーの作成、SSHの鍵認証、rootログインの無効化、ファイアウォールの確認。私は途中で fail2ban に自分のIPをブロックされ、SSHが無応答になりました。その復旧手順まで。

VPSSSHセキュリティ

運用・トラブルを調べる

Dockerのつまずきと、公開後の計測を読む。

docker-compose.prod.yml が効かない — 本番が開発モード

本番用の設定ファイルを用意していたのに、実際には開発用の起動コマンドで動いていました。サイトは正常に見えていて、誰も困っていません。原因は「書かなかった設定は、消えずに引き継がれる」という Docker Compose のマージ規則です。

DockerDocker Composeデプロイ

Docker Compose の ports は override しても上書きされない

docker-compose.override.yml に ports を書けばベースを置き換える、と思っていたら連結されていた。次に再作成した瞬間に port is already allocated でサイトが起動しなくなる状態だった。最小再現で挙動を確認し、!override / !reset で直すまで。

DockerDocker Compose個人開発

docker ps が unhealthy なのにサイトは正常に動いていた

コンテナの状態表示がずっと赤いのに、サイトは問題なく見えていました。重すぎてタイムアウトしていると思ったら、原因はリダイレクトと証明書でした。Dockerに残るチェックの出力を確認し、本番だけで失敗した設定を直した記録です。

DockernginxHTTPS