広告スペース(バナー)
🐳Docker レッスン
Dockerの基本を知ろう5
コンテナの起動と管理6
コンテナのライフサイクル操作5
コンテナとのやり取り6
リソース監視とファイル操作3
Dockerfileを書いてみよう6
イメージのビルドと共有5
ボリュームとネットワーク・compose8
レッスン 19 / 45

docker run -v でボリュームをマウントしよう

「コンテナを消してもデータだけは残したい」というときに使うのがdocker run -vです。ホストとコンテナの間でフォルダやボリュームを共有(マウント)するオプションです。

docker run -v ホストのパス:コンテナのパス イメージ名という書式で使います。コンテナ自体は使い捨てにしつつ、データだけを永続化したいときに使います。

docker run -v /data:/var/lib/data nginxを実行すると、ホストの/dataフォルダとコンテナ内の/var/lib/dataフォルダが共有され、どちらから書き込んでも同じ内容になります。

よくあるつまずきは、コンテナはデフォルトでは消えるとデータも消える前提を忘れ、大事なデータをボリューム無しで保存してしまうことです。データベースのコンテナなどでは特に注意が必要です。

実務ではデータベースの保存データや、アップロードされたファイルなど、コンテナのライフサイクルとは切り離して残したいデータの管理に使われます。

Docker
試してみよう(疑似ターミナルへの入力例)
docker run -v /data:/var/lib/data nginx

🧑‍💻 このコマンドは Dockerの疑似ターミナル に実際に入力して試せます(このページ自体には操作可能なターミナルはありません)。

🎯
ここまでできればゴール達成!
コンテナの外にデータを永続化できるようになります。
広告スペース(バナー)
広告スペース(記事内)