ไฟล์ Compose เวอร์ชันที่แท้จริงคืออะไรหากฉันไม่ได้ระบุเวอร์ชันรอง?


5

หางมีหน้าเอกสารที่แสดงรุ่นเขียนกับรุ่นของหางเครื่องยนต์ที่พวกเขาสนับสนุน ในระยะสั้น:

เขียนไฟล์ฟอร์แมต Docker Engine
--------------------------------------------
3.6 18.02.0+
3.5 17.12.0+
3.4 17.09.0+
3.3 17.06.0+
3.2 17.04.0+
3.1 1.13.1+
3.0 1.13.0+
...

ฉันรู้ว่าฉันสามารถใช้รุ่นหลัก / รองรุ่นเฉพาะในไฟล์เขียนของฉัน ( version: "3.6") แต่จะเกิดอะไรขึ้นหากฉันไม่ระบุรุ่นรอง ( version: "3") สิ่งนี้มีพฤติกรรมเป็น "3.0", เป็นเวอร์ชั่นล่าสุดที่ติดตั้งไว้หรือรูปแบบไฟล์เขียนสูงสุดที่รองรับ Docker Engine ที่ฉันติดตั้งไว้หรือไม่?

พูดเพื่อตัวอย่างฉันมี

  • Compose เวอร์ชันที่ติดตั้งสูงสุดคือ 3.5
  • ติดตั้ง Docker Engine 17.06.0 แล้ว

version: "3"และผมเริ่มเขียนไฟล์ของฉันด้วย ฉันสามารถเข้าถึงชุดคุณลักษณะใดได้บ้าง 3.0, 3.3, 3.5 หรือ 3.6?

คำตอบ:


2

หากคุณใช้version: '3'ในไฟล์เขียนของคุณมันจะทำหน้าที่เป็น 3.0

นี้ได้รับการยืนยันโดยผู้ปกครอง Chaudhuri ในฟอรั่มหางชุมชน

คุณสามารถเข้าถึง 3.0 คุณสามารถตรวจสอบโดยการทำงานบนไฟล์ที่มีdocker-compose configversion: '3'

เป็นตัวอย่างให้ไฟล์เขียนนี้:

รุ่น: '3'

บริการ:
  HTML:
    ภาพ: nginx

วิ่งdocker-compose.yml --file <filename> configจะผลิต:

บริการ:
  HTML:
    ภาพ: nginx
รุ่น: '3.0'

อีกวิธีหนึ่งในการทดสอบนี้คือการสร้างไฟล์ "3" ที่มีฟีเจอร์ที่แนะนำหลังจาก 3.0 configsเป็นคุณสมบัติที่เพิ่มเข้ามาในเวอร์ชั่น 3.3 ใช้งานไฟล์นี้:

รุ่น: '3'

บริการ:
  HTML:
    ภาพ: nginx
    configs:
      - แหล่งที่มา: myconfig
        เป้าหมาย: /tmp/abc.txt

configs:
  myconfig:
    ไฟล์: ./some-file.txt

จะสร้างข้อผิดพลาดระบุว่า "configs" ไม่ใช่ตัวเลือกที่ถูกต้อง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.