
【初心者向け】Dockerのボリュームとは?コンテナのデータ永続化をやさしく解説
🚀 はじめに この記事で「できる」ようになること Dockerのボリュームが何か、なぜ必要かがサクッとわかる ボリューム/bind mount/匿名ボリュームの違いを図と例で理解 5分で試せるコマンド、Composeでの書き方、バックアップ方法まで把握 こんな人向け 中学生~大人まで、IT知識がほとんどない初心者 「コンテナのデータが消えない仕組みをやさしく知りたい」人 用語にビビらず、まずは全体像と手順を知りたい人 初心者でも安心な理由 身近なたとえ(USBメモリ/引っ越しのタンス)でイメージ 最小のコマンドから順に解説(コピペで動きます) この記事だけで完結(最後に信頼できる参考リンクも) ✅ 概要解説 Dockerの「ボリューム」とは? コンテナの外に置く「保存箱(USBメモリのようなもの)」。 コンテナを入れ替えても(壊しても作り直しても)中のデータは残る仕組みです。 コンテナは使い捨てが基本(壊して作り直すのが普通) でも、アプリが作るデータ(設定・画像・DBファイル) は捨てたくない だから「データだけは外(ホスト)に避難」→ それがボリューム 何のためにあるの? 保存のため:コンテナを消してもデータは生き残る 分離のため:アプリ(コンテナ)とデータの置き場を分ける 引っ越しのため:別のコンテナや別環境へデータを持ち運びやすい ボリュームがないとどうなる? コンテナ内にデータを置くと、コンテナを削除した瞬間にデータも消える アップデートや再配布のたびに毎回ゼロからになってしまう どんな場面で使える? データベース(MySQL・PostgreSQL)のデータ置き場 WordPressのアップロード画像や設定ファイル アプリのログや設定(コンフィグ) 学習用ノート(Jupyter など)の保存先 まずは 5 分で体験(最小セット) 目的:コンテナを消しても、ファイルが残ることを確認します。 ボリュームを作って書き込む bash docker volume create mydata # ボリュームを /data にマウントし、ファイルを書き込む docker run --rm -v mydata:/data alpine sh -c "echo 'hello volume' > /data/hello.txt && cat /data/hello.txt" 別のコンテナから読み出せるか確認 bash docker run --rm -v mydata:/data alpine cat /data/hello.txt # => hello volume (データは残っている!) ボリュームはコンテナの外にあるため、コンテナを消してもファイルが消えません。 ...