国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Windows Containers 大冒險(xiǎn): 容器存儲(chǔ)

cgh1999520 / 2004人閱讀

摘要:前言容器技術(shù)中最核心的一個(gè)技術(shù)點(diǎn)是分層存儲(chǔ)。當(dāng)容器運(yùn)行在進(jìn)程隔離模式下時(shí),在容器內(nèi)使用進(jìn)程相關(guān)賬號(hào)進(jìn)行操作。掛載好并指定盤(pán)符后就可以在在容器內(nèi)開(kāi)始使用掛載的存儲(chǔ)卷了。

前言

容器技術(shù)中最核心的一個(gè)技術(shù)點(diǎn)是分層存儲(chǔ)。在Linux下相關(guān)文件默認(rèn)被存放在/var/lib/docker下,而在Windows 10下安裝Docker for Windows 后默認(rèn)的存儲(chǔ)文件被放在 C:ProgramDatadocker 下??梢酝ㄟ^(guò)在配置文件中設(shè)置 docker-root 來(lái)修改默認(rèn)存放的位置。然后即使知道了文件的實(shí)際存儲(chǔ)位置,也不建議大家手動(dòng)對(duì)文件進(jìn)行修改,這些文件處于Docker的精細(xì)化管理中。

細(xì)節(jié)技術(shù)點(diǎn) 默認(rèn)C盤(pán)空間大小

默認(rèn)情況下, microsoft/windowsservercore:1803 的鏡像C盤(pán)空間大小為20G。我們可以通過(guò)以下命令進(jìn)入容器內(nèi)部,然后使用PowerShell命令確認(rèn)。

docker run --rm -it microsoft/windowsservercore:1803 powershell
Get-CimInstance -Class Win32_Volume | select DriveLetter, @{Name="CapacityInGB"; Expression={$PSItem.Capacity / 1GB}}, @{Name"FreeSpaceInGB";  Expression={$PSItem.FreeSpace / 1GB}}

命令的輸出結(jié)果如下:

DriveLetter     CapacityInGB    FreeSpaceInGB
-----------     ------------    -------------
C:          19.8740043640137 19.7209014892578

如果這個(gè)默認(rèn)大小不能滿足部分軟件的剩余空間檢查條件,那么可以在docker run時(shí)使用--storage-opt "size=50GB"進(jìn)行修改,然后再次運(yùn)行之前的PowerShell命令進(jìn)行確認(rèn)。

DriveLetter     CapacityInGB    FreeSpaceInGB
-----------     ------------    -------------
C:          49.8740005493164 49.7309150695801
持久化存儲(chǔ)卷

在Windows中容器的持久化存儲(chǔ)有幾種方式,比如Bind Mounts, Named Volumes,以及在Bind Mounts中還支持SMB共享文件夾。

Bind Mounts

在使用 Bind Mounts 時(shí)我們需要注意權(quán)限問(wèn)題。當(dāng)容器運(yùn)行在Hyper-V隔離模式下時(shí),容器對(duì)主機(jī)文件夾是通過(guò)LocalSystem賬號(hào)進(jìn)行訪問(wèn)的,并提供簡(jiǎn)單的只讀和讀寫(xiě)兩種訪問(wèn)模型。如果發(fā)現(xiàn)沒(méi)有權(quán)限訪問(wèn)主機(jī)文件夾,則只需要在主機(jī)文件夾上增加LocalSystem的訪問(wèn)權(quán)限即可。

當(dāng)容器運(yùn)行在進(jìn)程隔離模式下時(shí),在容器內(nèi)使用進(jìn)程相關(guān)賬號(hào)進(jìn)行操作。默認(rèn)情況下microsoft/windowsservercore使用ContainterAdmin,而microsoft/nanoserver使用ContainerUser,來(lái)訪問(wèn)主機(jī)文件夾的。然而ContainterAdmin和ContainerUser僅存在于容器環(huán)境中,因此在主機(jī)上進(jìn)行權(quán)限配置時(shí)需要使用Authenticated Users。還需要注意的一點(diǎn)是,如果主機(jī)文件夾中包含符號(hào)鏈接,那這些主機(jī)上符號(hào)鏈接是在容器內(nèi)解析的,因此容器內(nèi)無(wú)法訪問(wèn)。

以下是 Bind Mounts 的一個(gè)例子, 容器啟動(dòng)后通過(guò)hostname講主機(jī)名寫(xiě)入到掛載的存儲(chǔ)卷中。

docker run --rm -it -v c:/apps/dockerdata:c:/data microsoft/nanoserver:1803 cmd
hostname > c:datahostname.txr
SMB Mounts

目前SMB Mounts支持傳統(tǒng)的文件服務(wù)器以及公用云上的服務(wù),這里的傳統(tǒng)服務(wù)器也包含支持iSCSI協(xié)議的服務(wù)器。這意味著可以使用iSCSI Target新建文件服務(wù)器,然后通過(guò)iSCSI Initiator建立鏈接。然后設(shè)置盤(pán)符。本地測(cè)試時(shí)使用老牌工具廠商Daemon Tools的iSCSI target。掛載好并指定盤(pán)符后就可以在在容器內(nèi)開(kāi)始使用掛載的存儲(chǔ)卷了。

Named Volume

以上兩種方式都是在 docker run 時(shí)使用-v參數(shù)指定需要掛載的本地文件夾或者映射到本地的遠(yuǎn)程存儲(chǔ)。也可以通過(guò) docker volume create 創(chuàng)建named volume,然后使用指定的名稱替代本地文件夾路徑進(jìn)行掛載。

比如可以使用以下命令創(chuàng)建 named volume

docker volume create app1_mysql_data

然后使用 docker inspect 查看數(shù)據(jù)實(shí)際的存放位置

$ docker volume inspect app1_mysql_data
[
    {
        "CreatedAt": "2018-06-10T13:41:39+08:00",
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "C:ProgramDataDockervolumesapp1_mysql_data\_data",
        "Name": "app1_mysql_data",
        "Options": {},
        "Scope": "local"
    }
]
總結(jié)

今天討論了和Windows容器存儲(chǔ)的相關(guān)細(xì)節(jié)知識(shí)點(diǎn),由于容器銷毀后容器內(nèi)數(shù)據(jù)即丟失的特性,合理的配置存儲(chǔ)卷將幫助我們實(shí)現(xiàn)數(shù)據(jù)持久化。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/27329.html

相關(guān)文章

  • Windows Containers 冒險(xiǎn): 術(shù)語(yǔ)

    摘要:而且在閱讀微軟的官方文檔之前,推薦閱讀官方的概覽文檔。因?yàn)槲④浀奈臋n中主要提及了的一些特有概念,而容器技術(shù)本身的概念并沒(méi)有被著重介紹。因此僅閱讀微軟現(xiàn)有文檔并不能完整的了解容器技術(shù)。一個(gè)踢爆索尼大法丑聞的男人。以下這張圖則來(lái)自官網(wǎng)。 前言 在開(kāi)始介紹具體操作之前,需要向各位不熟悉容器技術(shù)的Windows平臺(tái)下管理員和開(kāi)發(fā)者做一個(gè)基礎(chǔ)概念的普及。而且在閱讀微軟的官方文檔之前,推薦閱讀Do...

    caige 評(píng)論0 收藏0
  • Windows Containers 冒險(xiǎn): 容器網(wǎng)絡(luò)

    摘要:目前容器支持和。網(wǎng)絡(luò)類型在開(kāi)始介紹容器網(wǎng)絡(luò)前,各位需要了解的虛擬交換機(jī)類型。外部虛擬交換機(jī)將連接到容器主機(jī)的的物理網(wǎng)卡。當(dāng)容器引擎第一次運(yùn)行時(shí)默認(rèn)會(huì)創(chuàng)建名為的網(wǎng)絡(luò),該網(wǎng)絡(luò)使用內(nèi)部虛擬交換機(jī)及名為的系統(tǒng)組件。 前言 得益于現(xiàn)代便捷的交通網(wǎng)絡(luò),無(wú)論是公路,鐵路還是飛機(jī),我們的出游變得十分便利。當(dāng)數(shù)據(jù)暢游在容器世界中時(shí),也會(huì)經(jīng)歷各式各樣的網(wǎng)絡(luò)。目前Windows容器支持 nat, overl...

    denson 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<