Score:0

จะเรียกใช้ aws cli บนคอนเทนเนอร์ amazon linux ได้อย่างไร

ธง ke

ฉันต้องการเรียกใช้คำสั่ง amazon linux โดยเป็นส่วนหนึ่งของไปป์ไลน์ gitlab

ดังนั้น พยายามใช้ docker image เป็นตัวรัน amazonlinux: ล่าสุด

ดังนั้นเชื่อมต่อกับ docker container และรันคำสั่งด้านล่าง

yum -yq ติดตั้ง aws-cli

มันติดตั้ง aws-cli

จากนั้นกำหนดค่า aws cli

aws กำหนดค่าชุดภูมิภาค $AWS_REGION
aws กำหนดค่าชุด aws_access_key_id $AWS_ACCESS_KEY
aws กำหนดค่าชุด aws_secret_access_key $AWS_SECRET_KEY
aws กำหนดค่าชุด plugins.bolt awscli-plugin-bolt

จากนั้นรันคำสั่งด้านล่างเพื่อตรวจสอบข้อมูลประจำตัว แต่ได้รับข้อผิดพลาดเนื่องจาก aws-cli-plugin-bolt ไม่มี

aws sts รับตัวตนผู้โทร

จากนั้นรันการติดตั้ง python pip เหมือนกันและได้รับข้อผิดพลาดในการเลิกใช้งาน python 2.7 และไม่พบโมดูล

pip ติดตั้ง awscli-plugin-bolt
การเลิกใช้งาน: Python 2.7 สิ้นสุดอายุการใช้งานในวันที่ 1 มกราคม 2020 โปรดอัปเกรด Python ของคุณเนื่องจาก Python 2.7 ไม่ได้รับการดูแลอีกต่อไป pip 21.0 จะเลิกรองรับ Python 2.7 ในเดือนมกราคม 2021 ดูรายละเอียดเพิ่มเติมเกี่ยวกับการสนับสนุน Python 2 ใน pip ได้ที่ https://pip.pypa.io/en/latest/development/release-process/#python-2-support
คำเตือน: การรัน pip install ด้วยสิทธิ์ root โดยทั่วไปไม่ใช่ความคิดที่ดี ลองใช้ `pip install --user` แทน
ข้อผิดพลาด: ไม่พบเวอร์ชันที่ตรงตามข้อกำหนด awscli-plugin-bolt (จากเวอร์ชัน: ไม่มี)
ข้อผิดพลาด: ไม่พบการกระจายที่ตรงกันสำหรับ awscli-plugin-bolt

ดังนั้นเปลี่ยน python เป็น python 3 เป็นเวอร์ชันเริ่มต้นโดยใช้คำสั่งด้านล่างและการอ้างอิง หน้าหนังสือ.

amazon-linux-extras เปิดใช้งาน python3.8
ยำติดตั้ง python3.8
ทางเลือกในการปรับปรุง -- ติดตั้ง /usr/bin/python python /usr/bin/python3.8 1

จากนั้นติดตั้งสลักเกลียวโดยใช้ pip3

ยำติดตั้ง python3-pip
pip3 ติดตั้ง awscli-plugin-bolt

แต่ถึงกระนั้นคำสั่งด้านล่างยังคงค้นหา python 2 และล้มเหลว

aws sts รับตัวตนผู้โทร

ดังนั้น ลบคอนเทนเนอร์นั้นและสร้างคอนเทนเนอร์ใหม่ และในขั้นตอนแรก เปลี่ยน python เวอร์ชัน 3 เป็นค่าเริ่มต้น

แต่คราวนี้ yum การติดตั้ง aws-cli นั้นล้มเหลว

 bash-4.2# yum -yq ติดตั้ง aws-cli.dll
  ไฟล์ "/usr/bin/yum" บรรทัดที่ 30
    ยกเว้น KeyboardInterrupt, e:
                            ^
SyntaxError: ไวยากรณ์ไม่ถูกต้อง

โปรดแนะนำวิธีเข้าถึงคำสั่ง aws cli จากอิมเมจนักเทียบท่า amazonlinux

ดูเหมือนว่าจะใช้งานได้ถ้าฉันเปลี่ยนภาพเป็น

  ภาพ: 
    ชื่อ: อเมซอน/aws-cli
    จุดเริ่มต้น: [""]

เพื่อไม่ต้องติดตั้ง aws cli ด้วยตัวเอง แต่มันมาพร้อมกับ 3.7 โดยค่าเริ่มต้น วิธีการเปลี่ยนเป็นส่วนหนึ่งของภาพ และคำถามหลักใน gitlab ด้านบนรูปภาพใช้งานได้ โดย docker run ฉันไม่สามารถใช้รูปภาพได้โดยตรง คำสั่ง aws แต่ละคำสั่งเท่านั้นที่ยอมรับและปิดคอนเทนเนอร์ทันที

Tim avatar
gp flag
Tim
ฉันไม่คิดว่า AWS CLI v2 ได้รับการติดตั้งโดย yum ลองติดตั้งด้วยตนเอง ตรวจสอบเวอร์ชันหลังจากติดตั้งเพื่อให้แน่ใจว่าคุณใช้ CLI v2.x https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html

โพสต์คำตอบ

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