セットアップ
本番でDockerを使うときに決めておくこと
2026年10月8日

レン
手元でdocker composeで動いたから、そのままVPSに持っていけばいいよね?

プロクラ
動くとは思うよ。ただ、手元と本番では前提が違うところがいくつかある。持ち込む前に決めておくと、後で慌てずに済む。
1台のVPSに複数のサービスを同居させる
ブログ
80/443
データベース
内部のみ
検証環境
内部のみ
それぞれ独立した箱。片方を壊しても、もう片方には影響しない
1台のVPS(メモリ・CPUは共有)
分けられるのは環境だけ。メモリとCPUは同じ1台ぶんを分け合う
1. イメージをどう用意するか
- 本番のサーバー上でビルドする(手軽だが、資源を使う)
- 別の場所でビルドして、置き場所から取得する(本番の負荷が小さい)
- 小さいプランでは、ビルド中のメモリ不足に注意する
- 版を固定する(毎回最新を取る設定にすると、意図せず変わる)

プロクラ
4つめが重要だよ。最新版を自動で取る設定にしていると、再起動しただけで中身が変わることがある。動いていたものが動かなくなる原因になる。
2. 再起動したときの扱い
サーバーを再起動したあと、コンテナが自動で立ち上がるかは設定次第です。手で起動していた場合、再起動後に止まったままになります。しかもサーバー自体は正常に動いているので、外から見ると原因が分かりにくい。動かし始める前に、ここを決めておいてください。
- サーバーが再起動したとき、コンテナが自動で上がる設定にする
- 落ちたときに再起動する設定も入れる
- ただし、無限に再起動を繰り返さないよう上限を設ける
- 実際に一度、サーバーを再起動して確かめる

プロクラ
4つめを済ませておくと、更新のための再起動が怖くなくなるよ。本番で初めて試すことにならないようにしよう。
3. ログとバックアップ

プロクラ
コンテナのログは既定では上限が無く、放っておくと膨らむ。バックアップの対象も、コンテナの中ではなくボリュームや共有ディレクトリになる点に注意が必要だよ。
- ログの最大サイズと保存数を、全体の既定として設定する
- バックアップの対象は、ボリュームと共有ディレクトリ
- データベースは、中身を書き出す形で取るほうが確実
- 設定ファイル一式も、バージョン管理に入れておく
4. 守りの設定
- コンテナ内でrootとして動かさない
- 外に出す必要が無いポートは、公開しないか範囲を限定する
- イメージに認証情報を焼き込まない
- ベースイメージを定期的に更新する(中のOSにも弱点が見つかる)

プロクラ
4つめは忘れられやすいところだよ。ホストのOSは自動更新していても、コンテナの中身は自分で作り直さないと古いまま。更新の対象として、両方を意識しよう。

レン
版を固定する、再起動を試す、ログの上限を決める。持ち込む前にやっておく。
5. 資源の上限を決める

プロクラ
既定では、コンテナはホストのメモリを使えるだけ使う。1つのコンテナが暴走すると、他も巻き込んで落ちることになる。
- コンテナごとに、使えるメモリの上限を指定する
- 合計が、サーバーの容量に収まるようにする
- 上限に達したコンテナだけが止まるので、被害が限定される
- 本番と検証を同居させるなら、特に効く

プロクラ
小さいプランほど、この設定の価値が高いよ。1つの不具合で全部が落ちる構成にしないための、安い保険だと考えて。
VPSの料金を比較する
あわせて読みたい
- セットアップバックアップから実際に戻してみる:一度やっておく価値取得できていても戻せないことがあります。本番を使わずに練習する方法、確認すべき項目、そして復旧にかかる時間を測っておく意味を解説します。
- セットアップHTTP/2・HTTP/3を有効にすべきか新しい通信方式で何が変わるのか、体感に出る場面と出ない場面。有効にするときの前提条件と、確認方法を解説します。
- セットアップデプロイのたびにサイトを落とさない稼働中のファイルを直接上書きすると、その瞬間のアクセスが失敗します。作ってから差し替える考え方と、実際に起きた失敗例を解説します。
- セットアップビルドをどこでやるか:本番サーバーの負荷を避ける本番でビルドすると何が起きるのか、別の場所で作る場合の選択肢。小さいプランでビルドが失敗する理由と、その回避策を解説します。
サーバーを触る前に押さえておきたいこと
姉妹サイトの、この記事と相性のいいページです。
- Docker入門
イメージとコンテナの考え方から順番に — prodou.net
- Dockerfile Generator
Dockerfileの雛形をブラウザで作る — toolkitbox.net
- Linuxコマンド入門
ls / cd / grep などを疑似ターミナルで試しながら学べる — prodou.net