1. 程式人生 > >docker-tmpfs掛載

docker-tmpfs掛載

ins mil 第一個 ane tin 無法 ora family docs

使用tmpfs掛載

卷和綁定裝置允許在主機和容器之間共享文件,以便即使在容器停止後也可以保留數據。

如果你在Linux上運行Docker,你有第三個選擇:tmpfs mounts。使用tmpfs裝載創建容器時,容器可以在容器的可寫層外創建文件。

與卷和綁定掛載相反,tmpfs掛載是臨時的,並且僅保留在主機內存中。當容器停止時,將tmpfs刪除安裝,並且不會保留寫在那裏的文件。

技術分享圖片

這對於臨時存儲不希望在主機或容器可寫層中保留的敏感文件很有用。

tmpfs安裝的限制

  • 與卷和綁定裝入不同,無法tmpfs在容器之間共享裝載。
  • 只有在Linux上運行Docker時才能使用此功能。

--tmpfs--mount
行為之間的差異

  • --tmpfs標誌不允許指定任何可配置選項。
  • --tmpfs標誌不能與swarm服務一起使用。你必須使用--mount

在容器中使用tmpfs mount

tmpfs在容器中使用安裝,請使用--tmpfs標誌,或使用--mount帶有type=tmpfsdestination選項的 標誌。沒有 sourcetmpfs mounts。以下示例在Nginx容器中創建tmpfsmount /app。第一個示例使用--mount標誌,第二個示例使用--tmpfs標誌。

$ docker run -d   -it   --name tmptest   --mount type=tmpfs,destination=/app   nginx:latest
$ docker run -d   -it   --name tmptest   --tmpfs /app   nginx:latest

tmpfs通過運行docker container inspect tmptest並查找該Mounts部分來驗證安裝是否為mount :

"Tmpfs": {
    "/app": ""
},

刪除容器:

$ docker container stop tmptest

$ Docker container rm tmptest

指定tmpfs選項

tmpfs安裝允許兩個配置選項,這兩個選項都不是必需的。如果需要指定這些選項,則必須使用該--mount

標誌,因為該--tmpfs標誌不支持它們。

選項描述
tmpfs-size tmpfs的大小以字節為單位。默認無限制。
tmpfs-mode 八進制中tmpfs的文件模式。例如,7000770。默認為1777或世界可寫。

以下示例將tmpfs-modeto 設置為1770,因此它在容器中是不可讀的。

docker run -d   -it   --name tmptest   --mount type=tmpfs,destination=/app,tmpfs-mode=1770   nginx:latest

docker-tmpfs掛載