自由気ままに書いちゃおう

好きなことをつらつらと・・・

【Docker】mountオプションを利用したマウントについて

前回、前々回で、bindマウントとvolumeマウントについて記載致しました。
今回は、mountオプションを使ったマウント方法についてです。 

 

■はじめに

DockerコンテナからDockerホストのディレクトリもしくはボリュームを利用する際、
-vオプションもしくは今回記載するmountオプションのどちらかを利用します。

■-vオプションとmountオプションの違いについて

どちらを使っても動作は一緒です。
ただ、mountオプションの方が推奨されております。

推奨理由1)
-vオプションの場合、ぱっと見でbind,volumeマウントのどちらを意味しているかが分かりません。
可読性を考慮するとmountオプションを利用した方が良いです。

推奨理由2)
-vオプション利用時、仮にvolumeマウントが未作成の場合(=docker volume create未実行の場合)、自動的に新規ボリュームが作成されます。
それを許容できるかにもよりますが、ボリューム名を誤って指定した際等のリスクヘッジということを考慮するとmountオプションを利用した方が良いです。
※mountオプションの場合、存在しないvolumeマウントを指定した場合、エラーとなります。

■mountオプションの書式

--mount type=マウント種別,src=マウント元,dst=マウント先


【マウント種別】
bind ・・・ バインドマウントの時に指定します。
volume ・・・ ボリュームマウントの時に指定します。

【注意点】
忘れがちですが、カンマ区切りです。

■mountオプションを使ってみる

mountオプションを使ってみます。

【bindオプションの場合】

f:id:guri2o1667:20210525100727p:plain

【volumeオプションの場合】

f:id:guri2o1667:20210525101020p:plain


以上です。