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

資訊專欄INFORMATION COLUMN

Apply custom metadata

zorro / 3290人閱讀

摘要:你可以用過把元數據應用到你的鏡像,容器或者是守護進程中。元數據可以服務于廣泛的用途。這意味著本身并不提供基于嵌套屬性的查詢過濾器。使用指令給鏡像添加標簽指令用來給鏡像添加標簽,可選擇設置它的值。對于使用空格的標簽,要用雙引號或者反斜杠。

  

你可以用過LABEL把元數據應用到你的鏡像,容器或者是守護進程中。元數據可以服務于廣泛的用途。使用標簽可以給鏡像添加注釋或者是許可信息,還可以用來標志你的主機

標簽是 / 鍵值對,Docker以字符串的方式存儲標簽。你可以指定多個標簽但是每一個 / 必須不同防止對已經存在的鍵值對覆蓋。如果你給同一個key指定了多個不同的值,新的值會把之前的值覆蓋掉。記住,對于相同的key,Docker只會應用你提供的最后一個值。

  

注意:Docker1.4.1之后的版本才支持daemon-labels,對標簽和容器的標簽支持是1.6.0中的新特性。

Label keys (namespaces)
  

標簽的,(也就是命名空間)

Docker對你創建的標簽中的鍵沒有什么硬性的限制,但是簡單的鍵也有可能沖突。例如,你通過architecture標簽來給你的鏡像分類:

languageLABEL architecture="amd64"
LABEL architecture="ARMv7"

而且用戶也可以通過不同風格的標簽來給鏡像打標簽:

languageLABEL architecture="Art Nouveau"

為了防止命名沖突,Docker的命名空間標簽鍵使用反向域名表示。參考下面來命名你的鍵:

所有的(第三方)工具都用反向域名前綴+標簽的方式來命名,這個反向域名要和工具作者提供的域名一致,如com.example.some-labelcom.example.some-auther="root"

com.docker.*, io.docker.*com.dockerproject.*保留給Docker內部使用

鍵只能是小寫字母,數字,點和-表示,及[a-z0-9-.]

鍵名的開始和結束只能是字母和數字

不能包含連續的-和點

沒有名稱空間的標簽保留給CLI,這就允許最終用戶給容器和鏡像添加元數據而不必在終端輸入繁瑣的命令

上面列舉的都是準則且Docker嚴格遵守執行。如果你沒有遵守這些準則有可能導致標簽名的沖突。如果恰巧你也在使用標簽構建工具的話,趕快為你的標簽和鍵使用名稱空間吧

Store structured data in labels
  

在標簽中存儲結構化數據

標簽中的值可以包含任何能被存儲為字符串的值,例如下面的JSON格式的數據:

shell{
    "Description": "A containerized foobar",
    "Usage": "docker run --rm example/foobar [args]",
    "License": "GPL",
    "Version": "0.0.1-beta",
    "aBoolean": true,
    "aNumber" : 0.01234,
    "aNestedArray": ["a", "b", "c"]
}

要想把這個結構存儲在標簽中,首先你要把它序列化為字符串:

languageLABEL com.example.image-specs="{"Description":"A containerized foobar","Usage":"docker run --rm example/foobar [args]","License":"GPL","Version":"0.0.1-beta","aBoolean":true,"aNumber":0.01234,"aNestedArray":["a","b","c"]}"

雖然可以在標簽中存儲結構化的數據,但是Docker把它(結構化的數據)看作是普通的字符串。這意味著Docker本身并不提供基于嵌套屬性的查詢(過濾器)。如果你的工具需要通過嵌套屬性來過濾,那么你的工具本身要實現這個功能,二不要讓Docker去做。

Add labels to images; the LABEL instruction
  

使用LABEL指令給鏡像添加標簽

languageLABEL [.][=] ...

LABEL指令用來給鏡像添加標簽,可選擇設置它的值。對于使用空格的標簽,要用雙引號或者反斜杠
e.g.

languageLABEL vendor=ACME Incorporated
LABEL com.example.version.is-beta
LABEL com.example.version="0.0.1-beta"
LABEL com.example.release-date="2015-02-12"

注意:上面的第二行中只有鍵,沒有值。
LABEL指令支持在一個LABEL下設置多個
e.g.

languageLABEL com.example.version="0.0.1-beta" com.example.release-date="2015-02-12"

Docker允許使用反斜杠,將1行指令分割為多個行

languageLABEL vendor=ACME Incorporated 
      com.example.is-beta 
      com.example.version="0.0.1-beta" 
      com.example.release-date="2015-02-12"

Docker更推薦你在一個LABEL指令中設置多個標簽,每個標簽都用指令多帶帶設置的話會讓你的鏡像很低效,這是因為每一個Dockerfile中的LABEL指令都會產生1個鏡像層(怒了,這個解釋直達本質啊)!!!

我們可以使用docker inspect來查看鏡像或者容器的標簽

Query labels
  

查詢標簽

標簽除了可以用來存儲元數據,還可以用來過濾鏡像和容器。下面的命令將會列出所有包含com.example.is-beta標簽并且運行這的容器:

languagedocker ps --filter "label=com.example.is-beta"

color標簽且值為blue的運行中的容器

languagedocker ps --filter "label=color=blue"

包含vendorACME的鏡像

languagedocker images --filter "label=vendor=ACME"
Daemon labels
  

守護標簽

docker info這條命令的解釋是:Display system-wide information(顯示全部信息)
下面是我電腦上的結果:

languageadolph@geek:~$ docker info
Containers: 7
Images: 44
Storage Driver: aufs
 Root Dir: /var/lib/docker/aufs
 Backing Filesystem: extfs
 Dirs: 58
 Dirperm1 Supported: false
Execution Driver: native-0.2
Kernel Version: 3.13.0-52-generic
Operating System: Ubuntu 14.04.2 LTS
CPUs: 4
Total Memory: 7.687 GiB
Name: geek
ID: HGR7:UGWW:VQVV:WYMF:CSEE:KJ4C:QS4U:IRIU:LREB:M4YC:GDJY:YPI5
Username: adolphlwq
Registry: [https://index.docker.io/v1/]
WARNING: No swap limit support

可以看出里面主要是關于Docker daemon的信息,這里并沒有關于它的標簽信息。但是我們可以通過``docker -d label=value`的方式給Docker daemon本身添加標簽:

languagedocker -d 
  --dns 8.8.8.8 
  --dns 8.8.4.4 
  -H unix:///var/run/docker.sock 
  --label com.example.environment="production" 
  --label com.example.storage="ssd"

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/26411.html

相關文章

  • kubernetes自定義資源對象高級功能

    摘要:可以通過驗證自定義對象是否符合標準。此功能可用于及以上版本自定義資源。狀態和規范節分別由自定義資源內的和表示。對子資源的請求采用自定義資源對象,并忽略除狀態節之外的任何更改。該對象作為有效負載發送。 kubernetes自定義資源對象高級功能 本文首發于微信公眾號我的小碗湯,掃碼文末二維碼即可關注,歡迎一起交流! kubernetes自定義資源對象再極大程度提高了API Server的...

    Mr_zhang 評論0 收藏0
  • kubernetes自定義資源對象高級功能

    摘要:可以通過驗證自定義對象是否符合標準。此功能可用于及以上版本自定義資源。狀態和規范節分別由自定義資源內的和表示。對子資源的請求采用自定義資源對象,并忽略除狀態節之外的任何更改。該對象作為有效負載發送。 kubernetes自定義資源對象高級功能 本文首發于微信公眾號我的小碗湯,掃碼文末二維碼即可關注,歡迎一起交流! kubernetes自定義資源對象再極大程度提高了API Server的...

    陳江龍 評論0 收藏0
  • k8s與HPA--通過 Prometheus adaptor 來自定義監控指標

    摘要:與通過來自定義監控指標自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。適配器刪除后綴并將度量標記為計數器度量標準。負載測試完成后,會將部署縮到其初始副本您可能已經注意到自動縮放器不會立即對使用峰值做出反應。 k8s與HPA--通過 Prometheus adaptor 來自定義監控指標 自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。 Kubernetes中的自...

    孫吉亮 評論0 收藏0
  • k8s與HPA--通過 Prometheus adaptor 來自定義監控指標

    摘要:與通過來自定義監控指標自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。適配器刪除后綴并將度量標記為計數器度量標準。負載測試完成后,會將部署縮到其初始副本您可能已經注意到自動縮放器不會立即對使用峰值做出反應。 k8s與HPA--通過 Prometheus adaptor 來自定義監控指標 自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。 Kubernetes中的自...

    HollisChuang 評論0 收藏0
  • k8s與HPA--通過 Prometheus adaptor 來自定義監控指標

    摘要:與通過來自定義監控指標自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。適配器刪除后綴并將度量標記為計數器度量標準。負載測試完成后,會將部署縮到其初始副本您可能已經注意到自動縮放器不會立即對使用峰值做出反應。 k8s與HPA--通過 Prometheus adaptor 來自定義監控指標 自動擴展是一種根據資源使用情況自動擴展或縮小工作負載的方法。 Kubernetes中的自...

    ityouknow 評論0 收藏0

發表評論

0條評論

zorro

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<