Dockerで「名前付きボリューム」や「匿名ボリューム」という言葉の意味とは?
今回はDockerにおける「名前付きボリューム」や「匿名ボリューム」という言葉の意味についてご紹介していこうと思います。
Dockerで「名前付きボリューム」や「匿名ボリューム」という言葉の意味とは?
実際に見ていただいた方が早いかもしれません。
下記はdocker-compose.ymlの設定で、「名前付きボリューム」と「匿名ボリューム」それぞれになります。
・名前付きボリューム
| 
					 1 2 3 4 5 6 7 8  | 
						version: '3' services:   test_app:     build: .     volumes:       - front_node_modules:/myapp/node_modules volumes:   front_node_modules:  | 
					
・匿名ボリューム
| 
					 1 2 3 4 5 6  | 
						version: '3' services:   test_app:     build: .     volumes:       - ./testApp/node_modules:/myapp/node_modules  | 
					
簡単に言うとservicesの外にvolumesを定義してあるのが名前付きボリューム(servicesの外に定義することで、docker-compose upをすると対象の名前のボリュームがプロジェクト直下につくられたりします)、servicesの中にvolumesを定義してあるのが匿名ボリュームです。
名前付きボリュームはアプリケーションで共通で使うものに対して定義すると役立ちます。
test_app1とtest_app2で名前付きボリュームの「front_node_modules」を共通で扱うなどです。
対して匿名ボリュームはアプリケーション単体のみに対して使うと良いかもしれません。
「Volume Trick」と呼ばれているnode_modulesを別のディレクトリに定義する技術がありますが、名前付きボリュームでも匿名ボリュームでもどちらでも機能するそうです。
終わりに
今回はDockerにおける「名前付きボリューム」や「匿名ボリューム」という言葉の意味についてご紹介いたしました。








ディスカッション
コメント一覧
まだ、コメントがありません