ฉันกำลังพยายามส่งอิมเมจนักเทียบท่าไปยังรีจิสตรีคอนเทนเนอร์บนแพลตฟอร์มคลาวด์ของ Google ฉันสามารถสร้างอิมเมจได้สำเร็จบนเครื่องของฉัน ฉันลองคำสั่งต่อไปนี้:
sudo docker พุช eu.gcr.io/$PROJECT_ID/$CONTAINER_NAME
ฉันได้รับสิทธิ์ปฏิเสธข้อผิดพลาด:
ไม่ได้รับอนุญาต: คุณไม่มีสิทธิ์ที่จำเป็นในการดำเนินการนี้ และคุณอาจมีข้อมูลประจำตัวที่ไม่ถูกต้อง หากต้องการตรวจสอบคำขอของคุณ ให้ทำตามขั้นตอนใน: https://cloud.google.com/container-registry/docs/advanced-authentication
ฉันลองทำตามขั้นตอนในลิงค์ที่ให้ไว้โดยเฉพาะ ตัวช่วยข้อมูลรับรอง gcloud คำแนะนำ. ฉันยังพยายาม gcloud auth กำหนดค่านักเทียบท่า
และ เข้าสู่ระบบ gcloud รับรองความถูกต้อง
ทั้งหมดไม่มีประโยชน์ เกี่ยวกับสิทธิ์ IAM อีเมลส่วนตัวของฉันแสดงเป็นเจ้าของและบทบาทผู้ดูแลระบบพื้นที่เก็บข้อมูล ฉันยังได้ตั้งค่าบัญชีบริการด้วยบทบาทเจ้าของและผู้ดูแลระบบพื้นที่เก็บข้อมูลด้วยตนเอง ของฉัน $GOOGLE_APPLICATION_CREDENTIALS
ตัวแปรสภาพแวดล้อมชี้ไปที่ไฟล์ json ที่แยกจากบัญชีบริการที่สร้างขึ้นด้วยตนเองนี้ gcloud auth กำหนดค่านักเทียบท่า
ให้ผลลัพธ์ต่อไปนี้:
คำเตือน: ไฟล์ config ของคุณที่ [/home/awa5114/.docker/config.json] มีรายการ credential helper เหล่านี้:
{
"credHelpers": {
"gcr.io": "gcloud",
"us.gcr.io": "gcloud",
"eu.gcr.io": "gcloud",
"asia.gcr.io": "gcloud",
"staging-k8s.gcr.io": "gcloud",
"marketplace.gcr.io": "gcloud"
}
}
การเพิ่มข้อมูลรับรองสำหรับที่เก็บ GCR ทั้งหมด
คำเตือน: รายการตัวช่วยข้อมูลประจำตัวจำนวนมากอาจทำให้เกิดความล่าช้าในการเรียกใช้ 'docker build' เราขอแนะนำให้ส่งชื่อรีจิสทรีเพื่อกำหนดค่าเฉพาะรีจิสทรีที่คุณกำลังใช้
gcloud credential helpers ลงทะเบียนถูกต้องแล้ว
ณ จุดนี้ ฉันไม่เข้าใจจริง ๆ ว่าเหตุใดฉันจึงถูกปฏิเสธไม่ให้ส่งรูปภาพนี้ไปยังรีจิสตรีคอนเทนเนอร์ ความช่วยเหลือใด ๆ จะได้รับการต้อนรับมากที่สุด ขอบคุณมาก ๆ.