Docker - ที่เก็บสาธารณะ
ที่เก็บสาธารณะสามารถใช้เพื่อโฮสต์อิมเมจ Docker ซึ่งทุกคนสามารถใช้ได้ ตัวอย่างคือรูปภาพที่มีอยู่ใน Docker Hub รูปภาพส่วนใหญ่เช่น Centos, Ubuntu และ Jenkins ล้วนเผยแพร่สู่สาธารณะสำหรับทุกคน นอกจากนี้เรายังสามารถทำให้รูปภาพของเราพร้อมใช้งานโดยการเผยแพร่ไปยังที่เก็บสาธารณะบน Docker Hub
สำหรับตัวอย่างของเราเราจะใช้ไฟล์ myimageที่เก็บที่สร้างขึ้นในบท "Building Docker Files" และอัปโหลดภาพนั้นไปยัง Docker Hub ก่อนอื่นเรามาตรวจสอบภาพบนโฮสต์ Docker ของเราเพื่อดูว่าเราสามารถผลักดันไปยังรีจิสทรีของ Docker ได้อย่างไร
ที่นี่เรามีไฟล์ myimage:0.1ภาพที่สร้างขึ้นเพื่อเป็นส่วนหนึ่งของบท“ Building Docker Files” ลองใช้สิ่งนี้เพื่ออัปโหลดไปยังที่เก็บสาธารณะ Docker
ขั้นตอนต่อไปนี้อธิบายวิธีอัปโหลดภาพไปยังที่เก็บสาธารณะ
Step 1- เข้าสู่ระบบ Docker Hub และสร้างที่เก็บของคุณ นี่คือที่เก็บที่จะเก็บรูปภาพของคุณ ไปที่https://hub.docker.com/ และเข้าสู่ระบบด้วยข้อมูลประจำตัวของคุณ
Step 2 - คลิกปุ่ม "สร้างที่เก็บ" บนหน้าจอด้านบนและสร้างที่เก็บด้วยชื่อ demorep. ตรวจสอบให้แน่ใจว่าการเปิดเผยของที่เก็บเป็นแบบสาธารณะ
เมื่อสร้างที่เก็บแล้วให้จดบันทึกไฟล์ pull คำสั่งที่แนบกับที่เก็บ
pull คำสั่งที่จะใช้ในที่เก็บของเรามีดังนี้ -
docker pull demousr/demorep
Step 3- กลับไปที่ Docker Host ที่นี่เราต้องติดแท็กไฟล์myimageไปยังที่เก็บใหม่ที่สร้างขึ้นใน Docker Hub เราสามารถทำได้ผ่าน Dockertag command.
เราจะเรียนรู้เพิ่มเติมเกี่ยวกับเรื่องนี้ tag command ต่อไปในบทนี้
Step 4- ออกคำสั่งล็อกอิน Docker เพื่อล็อกอินเข้าสู่ที่เก็บ Docker Hub จากพรอมต์คำสั่ง คำสั่งเข้าสู่ระบบ Docker จะแจ้งให้คุณป้อนชื่อผู้ใช้และรหัสผ่านไปยังที่เก็บ Docker Hub
Step 5- เมื่อแท็กรูปภาพแล้วก็ถึงเวลาพุชรูปภาพไปยังที่เก็บ Docker Hub เราสามารถทำได้ผ่าน Dockerpushคำสั่ง เราจะเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งนี้ในบทนี้
แท็กนักเทียบท่า
วิธีนี้ช่วยให้สามารถแท็กรูปภาพไปยังที่เก็บที่เกี่ยวข้องได้
ไวยากรณ์
docker tag imageID Repositoryname
ตัวเลือก
imageID - นี่คือ ImageID ที่ต้องแท็กไปยังที่เก็บ
Repositoryname - นี่คือชื่อที่เก็บที่ต้องติดแท็ก ImageID
ส่งคืนค่า
ไม่มี
ตัวอย่าง
sudo docker tag ab0c1d3744dd demousr/demorep:1.0
เอาต์พุต
ตัวอย่างผลลัพธ์ของตัวอย่างข้างต้นได้รับด้านล่าง
นักเทียบท่าผลักดัน
วิธีนี้ช่วยให้สามารถพุชภาพไปยัง Docker Hub
ไวยากรณ์
docker push Repositoryname
ตัวเลือก
Repositoryname - นี่คือชื่อที่เก็บข้อมูลที่ต้องส่งไปยัง Docker Hub
ส่งคืนค่า
ID ยาวของที่เก็บพุชไปที่ Docker Hub
ตัวอย่าง
sudo docker push demousr/demorep:1.0
เอาต์พุต
หากคุณกลับไปที่หน้า Docker Hub และไปที่ที่เก็บของคุณคุณจะเห็นชื่อแท็กในที่เก็บ
ตอนนี้เรามาลองดึงที่เก็บที่เราอัปโหลดไปยังโฮสต์ Docker ของเรา ก่อนอื่นให้ลบภาพmyimage:0.1 และ demousr/demorep:1.0จากโฮสต์ Docker ในเครื่อง มาใช้ Docker กันเถอะpull command เพื่อดึงที่เก็บจาก Docker Hub
จากภาพหน้าจอด้านบนคุณจะเห็นว่า Docker pull คำสั่งได้นำ repository ใหม่ของเราจาก Docker Hub และวางไว้ในเครื่องของเรา