Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengakses Label Imej Docker dengan Titik dalam Namanya Menggunakan Perintah `inspect`?
Mengakses Label Imej Docker dengan Titik dalam Nama
Arahan pemeriksaan Docker menyediakan cara yang mudah untuk mendapatkan semula label imej kontena. Walau bagaimanapun, mengekstrak label dengan titik dalam namanya menggunakan pilihan --format dan templat Go boleh terbukti mencabar.
Isu:
Imej Docker berikut mentakrifkan dua label:
FROM busybox LABEL foo="bar" LABEL com.wherever.foo="bang"
Menggunakan arahan inspect dengan pilihan --format:
$ docker inspect -f '{{ .Config.Labels.foo }}' foo
mengembalikan nilai untuk label "foo" dengan betul. Walau bagaimanapun, cuba mengakses label dengan titik dalam namanya:
$ docker inspect -f '{{ .Config.Labels.com.wherever.foo }}' foo
menghasilkan "
Penyelesaian:
Untuk mendapatkan semula label dengan titik dalam namanya, gunakan fungsi indeks dalam templat Go:
$ docker inspect -f '{{ index .Config.Labels "com.wherever.foo" }}' foo
Ini akan mengeluarkan nilai label yang dikehendaki, "bang".
Indeks fungsi mencari rentetan sewenang-wenang dalam peta dan mengembalikan nilai yang sepadan jika dijumpai. Dengan menentukan nama label sebagai parameter kedua, fungsi mendapatkan semula nilai yang berkaitan daripada peta Label bagi objek Config.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Label Imej Docker dengan Titik dalam Namanya Menggunakan Perintah `inspect`?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!