080-6372314
2020-04-18

เก็บ Docker Image บน Container Registry Google Cloud


"Docker Image on Google Cloud"


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


สิ่งที่ต้องมี

  1. สร้าง Project บน Google Cloud
  2. Enable API Container Registry

Container Registry API

  1. ติดตั้ง Cloud SDK
  2. ติดตั้ง Docker

มาเริ่มกันเลย

  1. Config ให้ Docker สามารถ push image ขึ้น Google Cloud โดยใช้คำสั่ง

Config Docker Push image

  1. กด y เพื่อทำการ update Docker config

Update Docker Config

  1. ทำการ build Dockerfile ของเราโดยการกำหนดชื่อของ tag image จะอยู่ในรูปแบบ [HOSTNAME]/[PROJECT-ID]/[IMAGE]
    HOSTNAME : คือ การระบุว่าจะให้ image ของเราไปจัดเก็บที่ location ไหน ซึ่งใน Google จะมีหลาย location ดังนี้
    - gcr.io = image จะจัดเก็บอยู่ที่ data center ใน United States
    - us.gcr.io = image จะจัดเก็บอยู่ที่ data center ใน United States แยกมาจาก gcr.io
    - eu.gcr.io = image จะจัดเก็บอยู่ที่ European Union
    - asia.gcr.io = image จะจัดเก็บอยู่ที่ data center Asia
    PROJECT-ID : คือ ID ของ Project ที่สร้างอยู่ใน Google Cloud
    IMAGE : คือ ชื่อของ image

Build Docker Image

  1. Push image ที่ได้จากการ build ก่อนหน้า

Push Docker Image

  1. ไปที่ Container Registry จะต้องเห็น image ที่เราได้ push ขึ้นมา เป็นอันเสร็จเรียบร้อย

Google Container Registry

สรุป

หวังว่าบทความนี้จะมีประโยชน์ไม่มากก็น้อยนะครับ ผิดพลาดตรงไหนขออภัยด้วยนะครับ