カテゴリー
docker-composeでマウントするvolumeを選択的にinclude/exclueする方法
※ 当ページには【広告/PR】を含む場合があります。
2023/09/23
node_modules
node_modules
Dockerコンテナで使う「Volume」をマウントするタイプの違い
Dockerでデータを扱う4つのマウントタイプ
Volume
Bind Mounts
tmpfs Mounts
Named Pipes
tmpfs Mounts
Named Pipes
Volume
Bind Mounts
Dockerでの「Volume」と「Bind Mounts」の違い
external: true
docker volume ls
docker-composeにおけるマウントの記述法について
書式:
[SOURCE:]TARGET[:MODE]
+ SOURCE: ホスト側であればコピー元のパス。
もしくは定義済みボリューム名
+ TARGET: ボリュームのマウント先となるコンテナ上のパス
+ MODE: (オプション)マウント後のファイル・フォルダの属性。
roで読み込み専用、rwで読み書き許可、など
#...
services:
app:
#...
volumes:
#👇「ボリューム」タイプでマウント
- type: volume
source: my-data
target: /hoge
#👇バインドマウント
- type: bind
source: ./piyo
target: /app/piyo
volumes:
my-data:
Dockerコンテナにマウントする際に特定のファイル・フォルダを除外する
./
app
#...
services:
app:
#...
volumes:
- .:/app
マウントからファイルを除外する
/dev/null
#...
services:
app:
#...
volumes:
- .:/app
#hoge.txtは除外
- /dev/null:/app/hoge.txt
hoge.txt
マウントからフォルダを除外する
#...
services:
app:
#...
volumes:
- .:/app
#node_modulesは除外
- /app/node_modules/
app
node_modules
「<名無しのボリューム>:/app/node_modules/」
#...
services:
app:
#...
volumes:
- .:/app
- hoge:/app/node_modules/
volumes:
hoge:
node_modules
hoge
まとめ
記事を書いた人
ナンデモ系エンジニア
主にAngularでフロントエンド開発することが多いです。 開発環境はLinuxメインで進めているので、シェルコマンドも多用しております。 コツコツとプログラミングするのが好きな人間です。
カテゴリー