ボリューム(ボリューム)とバインドマウント(バインドマウント)を使用すると、ホストとコンテナー間でファイルを共有できるため、コンテナーがデータの永続的な保存を停止した後でも実行できます。
LinuxでDockerを実行している場合は、3番目のオプションがあります:tmpfs
マウント。tmpfs
コンテナーマウントを使用して作成すると、コンテナーはコンテナーの外部に書き込み可能なファイルレイヤーを作成できます。
ボリュームやバインドマウントとは異なり、tmpfs
マウントは一時的なものであり、ホストのメモリにのみ残ります。コンテナが停止すると、tmpfs
マウントが削除され、そこに書き込まれたファイルは保持されません。
これは、ホストまたはコンテナの書き込み可能レイヤーに永続的に保存したくない機密ファイルを一時的に保存する場合に役立ちます。
tmpfsマウントの制限
- ボリュームマウントやバインドマウントとは異なり、マウントされたコンテナ間で共有することはできません
tmpfs
。 - この機能は、DockerがLinuxで実行されている場合にのみ使用できます。
選択--tmpfs
または--mount
マーク
当初、--tmpfs
タグはスタンドアロンコンテナーに--mount
使用され、タグはクラスターサービスに使用されていました。ただし、Docker 17.06以降--mount
は、別のコンテナーと組み合わせて使用することもできます。通常、--mount
マークの表現はより明確で冗長です。最大の違いは、--tmpfs
タグが構成可能なオプションをサポートしていないことです。
--tmpfs
:[tmpfs
マウントを設定]では、構成オプションを指定できず、別のコンテナーでのみ使用できます。--mount
:複数のキー-各キー値のペア、、-<key>=<value>
タプルの1つによる値のペア。より冗長な--mount
構文よりも--tmpfs
:- (実装のタイプ
type
のいずれであってもよい)bind
、volume
又はtmpfs
。このトピックについて説明tmpfs
しているので、タイプ(type
)は常にtmpfs
です。 - ターゲット(
destination
)、血管tmpfs
経路はその値としてマウントするために提供されます。それは使用することができdestination
、dst
またはtarget
指定します。 tmpfs-size
そしてtmpfs-mode
オプション。以下の指定されたtmpfsオプションを参照してください。
- (実装のタイプ
同時に、可能な限り、次の例が示す--mount
と--tmpfs
2つの構文、及び最初のショー--mount
。
--tmpfs
そして--mount
、行動の違い
--tmpfs
このタグでは、構成可能なオプションを指定することはできません。--tmpfs
このタグはクラスターサービスには使用できません。クラスタサービスの場合は、を使用する必要があります--mount
。
コンテナ内のtmpfsを使用してマウントします
コンテナtmpfs
マウントで使用するには、--tmpfs
マークを使用するか、使用type=tmpfs
およびdestination
オプション--mount
マークを使用します。tmpfs
ソースマウントには使用されません(source
)。
マウント/app
を作成するための次の例のNginxコンテナtmpfs
。最初の例では--mount
、2番目の--tmpfs
マーカーを使用してマークを使用しています。
--mount
:
$ docker run -d \
-it \
--name tmptest \
--mount type=tmpfs,destination=/app \
nginx:latest
--tmpfs
:
$ docker run -d \
-it \
--name tmptest \
--tmpfs /app \
nginx:latest
実行docker container inspect tmptest
してマウントがtmpfs
マウントされていることを確認し、Mounts
セクションを表示します。
"Tmpfs": {
"/app": ""
},
コンテナを削除します。
$ docker container stop tmptest
$ docker container rm tmptest
tmpfsオプションを指定します
tmpfs
マウントにより、2つの構成オプションが可能になりますが、どちらも必要ありません。これらのオプションを指定する必要がある場合--mount
、--tmpfs
マークはサポートされていないため、マークを使用する必要があります。
オプション | 説明 |
---|---|
tmpfs-size |
tmpfsマウントのサイズ(バイト単位)。デフォルトでは制限はありません。 |
tmpfs-mode |
tmpfsの8進ファイルモード。たとえば、700 または0770 。デフォルト1777 または書き込み可能。 |
次の例tmpfs-mode
はに提供され1770
ているため、コンテナ内ではグローバルに読み取り可能ではありません。
docker run -d \
-it \
--name tmptest \
--mount type=tmpfs,destination=/app,tmpfs-mode=1770 \
nginx:latest
著者:Dockerの公式ウェブサイト
翻訳者:Technical Zemin
発行元:Technical Verses
リンク:英語のテキスト