ทุกสิ่งที่คุณควรรู้เกี่ยวกับ Docker Hub

มารู้จักกับ Docker Hub กันดีกว่า.


วันนี้ในบทช่วยสอนนี้เราจะเรียนรู้เกี่ยวกับ Docker Hub รวมถึงวิธีการใช้งานวิธีการสร้างภาพของเราเองและวิธีที่ช่วยในการเผยแพร่และดึงภาพไปมาระหว่าง Docker Hub. และเราจะใช้เวลาสำรวจที่เก็บยอดนิยมบน Docker Hub ด้วย.

ข้อกำหนดเบื้องต้น

คุณต้องมีความเข้าใจพื้นฐานของ Docker คุ้นเคยกับสภาพแวดล้อม Windows และ Linux บทแนะนำนี้จะใช้เครื่องมือ Docker Desktop สำหรับฝึกออกกำลังกายอย่างต่อเนื่องเช่นสร้างและดันภาพไปที่ Docker Hub ผู้ใช้ Windows และ Mac สามารถดาวน์โหลดและติดตั้งได้ ที่นี่, และผู้ใช้ Linux ทำตามสิ่งนี้ ลิงค์.

Docker Hub คืออะไร?

Docker Hub เป็นบริการรีจิสตรีของที่เก็บข้อมูล นักเทียบท่า Inc.

มันช่วยให้เราสามารถดึงและดันภาพนักเทียบท่าเข้าและออกจาก Docker Hub เราสามารถปฏิบัติต่อสิ่งนี้ในฐานะ GitHub ซึ่งเราดึงข้อมูลและผลักดันซอร์สโค้ดของเรา แต่ในกรณีของ Docker Hub เราจะดาวน์โหลดหรือเผยแพร่รูปภาพคอนเทนเนอร์ของเรา เป็นที่เก็บออนไลน์บนคลาวด์ที่เก็บที่เก็บทั้งสองประเภทคือที่เก็บแบบ pubic รวมถึงที่เก็บส่วนตัว ทุกคนสามารถเข้าถึงที่เก็บสาธารณะได้ แต่ที่สาธารณะสามารถเข้าถึงได้โดยเจ้าของที่เก็บข้อมูลที่เกี่ยวข้อง นอกจากนี้ยังมีค่าใช้จ่ายที่เกี่ยวข้องหากเราจัดเก็บที่เก็บข้อมูลมากกว่าหนึ่งรายการเป็นส่วนตัว.

คุณสมบัติ Docker Hub

Docker Hub มีคุณสมบัติหลายประการดังต่อไปนี้.

# 1 ที่เก็บรูปภาพ

มันช่วยเราในการค้นหาและดึงภาพคอนเทนเนอร์จาก Docker Hub.

นอกจากนี้ยังช่วยเราในการผลักดันภาพเป็นที่เก็บข้อมูลสาธารณะหรือส่วนตัวไปยัง Docker Hub.

# 2 ทีมและองค์กร

มันช่วยให้เราสามารถสร้างกลุ่มงานและผลักดันที่เก็บเป็นส่วนตัวซึ่งสามารถใช้ได้ภายในองค์กรของเราเท่านั้น ด้วยวิธีนี้เรามีการจัดการการเข้าถึงที่เก็บส่วนตัวของภาพภาชนะ.

# 3 การรวม GitHub และ Bitbucket

อนุญาตให้รวมกับที่เก็บซอร์สโค้ดเช่น GitHub และ BitBucket.

# 4 งานสร้างอัตโนมัติ

หากการเปลี่ยนแปลงใด ๆ ในซอร์สโค้ดถูกผลักไปยังที่เก็บซอร์สโค้ดมันจะตรวจจับและสร้างอิมเมจคอนเทนเนอร์โดยอัตโนมัติจาก GitHub หรือ BitBucket และผลักดันพวกเขาไปยัง Docker Hub.

# 5 เว็บฮุค

เมื่อเราผลักรูปภาพของเราเรียบร้อยแล้วด้วยความช่วยเหลือจาก webhook มันจะกระตุ้นการดำเนินการเพื่อรวม Docker Hub เข้ากับบริการอื่น ๆ.

# 6 ภาพทางการและผู้จัดพิมพ์

รูปภาพคุณภาพสูงที่จัดทำโดยนักเทียบท่าถือว่าเป็นภาพที่เป็นทางการและสามารถดึงและใช้งานได้ ในทำนองเดียวกันรูปภาพคุณภาพสูงที่จัดหาโดยผู้จำหน่ายภายนอกคือรูปภาพของผู้เผยแพร่หรือที่เรียกว่ารูปภาพที่ผ่านการรับรองซึ่งให้การสนับสนุนและรับประกันความเข้ากันได้กับองค์กร Docker เราจะพูดถึงรูปภาพที่ได้รับการรับรองเพิ่มเติมในบทความนี้.

การสร้างพื้นที่เก็บข้อมูลแรก

ขั้นตอนนี้ต้องเข้าสู่ระบบเพื่อ Docker Hub ใช้ข้อมูลรับรองการเข้าสู่ระบบของคุณ หากคุณไม่มีบัญชีคุณสามารถสร้างได้โดยคลิกที่ปุ่มสมัครใช้งานบนหน้าเว็บ เมื่อคุณลงชื่อเข้าใช้แล้วคุณสามารถสร้างที่เก็บได้โดยคลิกที่ สร้างพื้นที่เก็บข้อมูล บนหน้าต้อนรับ.

  • เมื่อคลิกที่สร้างพื้นที่เก็บข้อมูลมันจะถามชื่อให้ชื่อกับที่เก็บของคุณ.

พื้นที่เก็บข้อมูลแรกของฉัน

  • เลือกตัวเลือกการเปิดเผยจากสาธารณะหรือส่วนตัว.

นอกจากนี้เรายังสามารถรวมที่เก็บซอร์สโค้ดของเราเช่น GitHub และ BitBucket ผ่านการตั้งค่าการสร้าง แต่มันเป็นตัวเลือกและสามารถทำได้ในระยะต่อมาเช่นกัน.

  • เมื่อทุกอย่างเสร็จสิ้นให้คลิกที่สร้าง.

การแสดงความยินดี! คุณสร้างที่เก็บข้อมูลแรกของคุณซึ่งจะมีลักษณะดังนี้.

การสร้างพื้นที่เก็บข้อมูลแรก

Docker Hub ให้พื้นที่เก็บข้อมูลส่วนตัวฟรีเพียงหนึ่งเดียวแก่เรา แม้ว่าหากเราต้องการที่เก็บส่วนตัวมากขึ้นเราสามารถอัปเกรดบัญชีของเราเป็นแผนชำระเงิน.

ตอนนี้เปิดเครื่องมือ / เทอร์มินัล Docker Desktop ดาวน์โหลดและติดตั้งด้านบนและลงชื่อเข้าใช้ Docker Hub โดยใช้คำสั่ง.

นักเทียบท่าเข้าสู่ระบบ

สำรวจภาพ

มีสองวิธีในการค้นหาที่เก็บสาธารณะและรูปภาพจาก Docker Hub นั่นคือเราสามารถค้นหาได้จากเว็บไซต์ Docker Hub หรือเราสามารถใช้เครื่องมือบรรทัดคำสั่งและเรียกใช้คำสั่งด้านล่าง พิจารณาว่าเราต้องการค้นหาอิมเมจที่เก็บ MySQL.

ค้นหานักเทียบท่า mysql

คำสั่งค้นหานักเทียบท่า

กำลังดาวน์โหลดรูปภาพ

เราสามารถดาวน์โหลดรูปภาพจากคำสั่ง Docker Hub โดยใช้คำสั่ง pull ดังนี้

# นักเทียบท่าดึง mysql

หากเรามีภาพ mysql อยู่แล้วในเครื่องของเราคำสั่งด้านบนจะอัปเดตภาพเป็นเวอร์ชั่นล่าสุดโดยอัตโนมัติ สิ่งหนึ่งที่ต้องจำไว้ที่นี่คือถ้าเราสังเกตเห็นผลลัพธ์คำสั่งนักเทียบท่าของเรามีหลายรูปของ MySQL บน Docker Hub และนั่นเป็นเพราะทุกคนสามารถผลักดันภาพ แต่ขึ้นอยู่กับเราว่าจะใช้อันไหนขึ้นอยู่กับการใช้งานของเราและเราต้องใช้ชีสที่เหมาะสม.

สมมติว่าเราต้องการดึงภาพ bitnami / mysql.

# นักเทียบท่าดึง bitnami / mysql

การสร้างภาพ

กระบวนการนี้ต้องการ Dockerfile เราสามารถคิดได้ว่า Dockerfile เป็นคู่มือการใช้งานที่บอกนักเทียบท่าว่าควรรวบรวมอะไร กล่าวโดยย่อคือไฟล์กำหนดค่าที่เก็บคำสั่งการประกอบสิ่งที่เราบอกให้รวบรวม.

มันทำงานยังไง?

นักเทียบท่าอ่านคำแนะนำจาก Dockerfile และสร้างภาพโดยอัตโนมัติ อิมเมจ Docker เป็นระบบไฟล์แบบเลเยอร์และประกอบด้วยเลเยอร์แบบอ่านอย่างเดียวหลายเลเยอร์และแต่ละเลเยอร์ของอิมเมจ Docker แสดงถึงคำแนะนำของ Dockerfile ลองทำตามขั้นตอนด้านล่างเพื่อสร้างภาพโดยใช้ Dockerfile.

สร้าง Dockerfile ซึ่งระบุการกำหนดค่าแอปพลิเคชันของเรา.

# sudo vim Dockerfile

หมายเหตุ – ชื่อของไฟล์ควรเป็น Dockerfile ด้วยทุน“D“.

จาก Ubuntu: 16.04
MAINTAINER [email protected]
RUN apt-get update
RUN apt-get install –y mysql
เสียงสะท้อน CMD "ภาพแรกของฉันสร้างขึ้น."

มาดูคำสำคัญที่ใช้ใน Dockerfile

  • เราสามารถใช้ # สัญลักษณ์เพื่อเพิ่มความคิดเห็นใน Dockerfile
  • จากคำหลัก” กำหนดภาพฐานที่จะใช้.
  • MAINTAINER” คำหลักคือบุคคลที่กำลังจะรักษาภาพนั้น.
  • วิ่ง” keyword ใช้เพื่อเรียกใช้คำสั่งที่กำหนดสำหรับภาพ ในกรณีของเราอันดับแรกให้อัปเดตระบบแล้วติดตั้ง MySQL.
  • CMDคำสำคัญ” จะใช้ในการดำเนินการคำสั่งเมื่อคอนเทนเนอร์ได้รับการเปิดตัว.
  • สำเนาคำหลัก” สามารถใช้เพื่อคัดลอกไฟล์จากระบบปฏิบัติการโฮสต์ของเราไปยังคอนเทนเนอร์นักเทียบท่า.
  • คีย์เวิร์ด“ EXPOSE” ใช้เพื่อระบุหมายเลขพอร์ตที่คอนเทนเนอร์จะรันกระบวนการ.

เรียกใช้คำสั่งด้านล่างเพื่อสร้างภาพนักเทียบท่าของเรา

ไวยากรณ์:

นักเทียบท่าสร้าง -t / repo-name .

# นักเทียบท่าสร้าง -t asadali08537 / first-repo .

ในคำสั่งด้านบนชื่อของภาพคือและ“.” ระบุไดเรกทอรีการทำงานปัจจุบัน นี่เป็นข้อบ่งชี้สำหรับนักเทียบท่าเพื่อค้นหาไดเรกทอรีปัจจุบันของไฟล์นักเทียบท่า “-เสื้อ” ถูกใช้เพื่อแท็กรูปภาพ เราสามารถเห็นผลลัพธ์คล้ายกับ:

สร้างภาพนักเทียบท่า

ตอนนี้ลองทดสอบภาพของเราโดยเรียกใช้ผ่านคำสั่งเรียกใช้ของนักเทียบท่า.

นักเทียบท่าวิ่ง asadali08527 / first-repo

การใช้คำสั่งข้างต้นจะขอให้ภาพ Docker ของคุณติดตั้ง MySQL บนเครื่องของคุณด้วยการอัพเดทที่จำเป็นทั้งหมดและในที่สุดมันจะแสดงข้อความ echo เช่นกัน.

ผลักภาพ

เมื่อสร้างภาพของเราเรียบร้อยแล้วและกำลังทำงานเราสามารถผลักมันไปยัง Docker Hub ผ่านคำสั่ง push.

นักเทียบท่าดัน asadali08527 / first-repo

ผลักภาพนักเทียบท่า

เราสามารถตรวจสอบแท็กรูปภาพและสถานะบน Docker Hub ซึ่งจะมีลักษณะเช่นนี้.

ภาพหน้าจอของ Docker Hub หลังจากกดรูปภาพ

รูปภาพที่รับรองโดยนักเทียบท่าคืออะไร?

ภาพเหล่านี้เป็นภาพทางการที่ถูกผลักดันโดยผู้ค้าหรือผู้สนับสนุน รูปภาพสามารถรับรองโดย Docker Hub ได้หากเนื้อหาสอดคล้องกับกฎมาตรฐานและกฎหมายที่จัดทำโดย Docker Hub กล่าวโดยย่อภาพนั้นจะต้องผ่านการทดสอบพื้นฐานบางอย่าง.

Docker Hub ให้บริการ inspectDockerImage เครื่องมือซึ่งผู้ขายสามารถรับรองรูปภาพและปลั๊กอินด้วยตนเอง (โดยปกติแล้วผู้ขายหรือผู้สนับสนุนจะเผยแพร่ปลั๊กอินสำหรับการบันทึกปริมาณและเครือข่าย).

บันทึก –

ในการเผยแพร่ภาพของเราในฐานะนักเทียบท่าที่ได้รับการรับรองก่อนอื่นเราต้องรับรองและทดสอบภาพและปลั๊กอินของเราด้วยตัวเองผ่านทาง inspectDockerImage เครื่องมือเมื่อเราได้รับการรับรองและทดสอบเรียบร้อยแล้วเมื่อส่ง Docker Hub จะรับรอง หากเนื้อหาของเราต้องการสภาพแวดล้อมที่ไม่ผ่านการรับรองก็ไม่สามารถเผยแพร่ได้ว่าได้รับการรับรองในทุกสถานการณ์.

รูปภาพยอดนิยมบน DockerHub

มี curated จำนวนมากและมีรูปภาพที่ได้รับการปรับปรุงให้ดีที่สุดบน Docker Hub.

ความนิยมของภาพเหล่านี้ขึ้นอยู่กับปัจจัยหลายประการเช่นการดึงการปรากฏตัวของตลาดการจัดอันดับคะแนนความพึงพอใจ ฯลฯ สำหรับรายละเอียดของที่เก็บข้อมูลที่นิยมมากที่สุดให้ไปที่ Docker Hub เว็บไซต์. การใช้รูปภาพขึ้นอยู่กับระบบปฏิบัติการและสถาปัตยกรรมของมันหากเรารู้ว่ารูปภาพที่ถูกดึงจะถูกใช้กับระบบปฏิบัติการและสถาปัตยกรรมของใดเราจะต้องพิจารณาปัจจัยสำคัญด้านล่างก่อนดึงภาพ.

  • ค้นหารุ่นเฉพาะโดยใช้แท็ก (ส่วนใหญ่เป็นรุ่นล่าสุด).
  • เลือกตัวเลือกที่มีการดาวน์โหลดและดาวสูงสุด.
  • ตรวจสอบการอัปเดต (เมื่ออัปเดตล่าสุด).
  • ถ้าเป็นไปได้ให้ตรวจสอบประเภทของมันไม่ว่าจะเป็นผู้เผยแพร่ที่ผ่านการตรวจสอบอย่างใดอย่างหนึ่งหรือเป็นทางการ (Docker Certified).

เว็บฮุค

webhook คือการติดต่อกลับทางเว็บที่ใช้งานได้กับเหตุการณ์และเป็นวิธีสำหรับแอปพลิเคชันในการให้ข้อมูลแบบเรียลไทม์แก่แอปพลิเคชันอื่น ทุกวันนี้แอปพลิเคชั่นเกือบทุกตัวมีสิ่งอำนวยความสะดวกแบบ webhook ดังนั้น Docker Hub ก็มีคุณสมบัตินี้เช่นกัน.

เป็น HTTP push API ที่ถูกทริกเกอร์โดยเหตุการณ์ที่ผู้ใช้กำหนด เราสามารถใช้ webhook in docker เพื่อแจ้งเตือนแอปพลิเคชันหรือบริการที่ใช้ภาพที่เกี่ยวข้อง โดยทั่วไปเรากำหนดค่า webhooks พร้อม docker เป็นไพพ์ไลน์ของเหตุการณ์เช่นการอัปโหลดรูปภาพใหม่ใด ๆ จะเรียกแอปพลิเคชันทดสอบเพื่อเรียกใช้กรณีทดสอบขีดเส้นใต้.

เมื่อผลการทดสอบประสบความสำเร็จจะมีการเรียกใช้เหตุการณ์อื่นซึ่งจะเป็นการปรับใช้คอนเทนเนอร์และเมื่อการปรับใช้เสร็จเรียบร้อยแล้วจะมีการเรียกใช้กิจกรรมอื่น ๆ เพื่อบันทึกการเปลี่ยนแปลงที่ทำไว้.

ข้อสรุป

ฉันเชื่อว่าตอนนี้คุณมีความเข้าใจที่ถูกต้องเกี่ยวกับ Docker Hub และวิธีที่คุณสามารถค้นหาสร้างและผลักดันภาพ โปรดทราบว่าเมื่อคุณกดภาพสาธารณะทุกคนจะมองเห็นได้.

หากยังไม่ได้ตรวจสอบคู่มือการติดตั้ง Docker นี้.

Tags:

  • นักเทียบท่า

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map