“./Docker-compose.yml” এর সংস্করণটি অসমর্থিত। আপনি সম্ভবত এই ত্রুটিটি দেখছেন কারণ আপনি ভুল রচনা ফাইল সংস্করণ ব্যবহার করছেন


90

এখানে আমার ডকার-কমপোজ.আইএমএল ফাইলটি রয়েছে:

version: '3.1'

services:
  a:
    image: tutum/hello-world
  b:
    image: tutum/hello-world

secrets:
  id: my_password

আমি যদি চালাতে $ docker-compose-upপারি তবে আমি এটি পেয়ে যাব:

"./Docker-compose.yml" সংস্করণটি অসমর্থিত। আপনি সম্ভবত এই ত্রুটিটি দেখছেন কারণ আপনি ভুল রচনা ফাইল সংস্করণ ব্যবহার করছেন।

আমার ডকার-রচনা সংস্করণ:

$ docker-compose --version
docker-compose version 1.11.0, build 6de1806

এখানে কি সমস্যা? আমার ডকার-রচনা সংস্করণটি ডকার-কমপোজ.আইএমএল স্পেসিফিকেশনের v3.1 সমর্থন করে না ( রিলিজ নোট অনুসারে , এটি কি)?


আপনার ডকারের সংস্করণটি কী (ডকার রচনা নয়)?
lvthillo

ডকার সংস্করণ 1.13.0, 49bf474 তৈরি করুন
এরিক

এটি docker-composeএবং নাdocker compose
আবদু তাহিরি

@ আবদৌতাহিরি সিএলআই docker-composeকেবল Docker Composeপ্রযুক্তি কিন্তু .. ডকস.ডোকার.কম্পোজ
lvthillo

4
সংস্করণ সহ একই ইস্যুটির মুখোমুখি "3.6"। আমার ডকটি হ'ল18.03.0-ce, build 0520e24
রাজীব রঞ্জন

উত্তর:


90

আপনি সবকিছু ঠিকঠাক করছেন এবং এটি কাজ করা উচিত। তবে ডকার-রচনা 1.11.0 এ একটি ত্রুটি ছিল যা ফাইল ফর্ম্যাটটি 3.1 বৈধ হিসাবে স্বীকৃত হয়নি। (3.0 কাজ করে)।

ইতিমধ্যে ডকার-রচনা (1.11.1) এর একটি নতুন রিলিজ রয়েছে যার মধ্যে বাগফিক্স রয়েছে:

বাগফিক্স

একটি বাগ ঠিক করে যেখানে 3.1 ফাইল ফর্ম্যাটটি কম্পোজ পার্সার দ্বারা বৈধ হিসাবে স্বীকৃত হয়নি

সুতরাং আপনি যদি ফাইল ফর্ম্যাটটি ৩.১ ব্যবহার করতে চান তবে আমি আপনার ডকার-রচনা সংস্করণটি আপগ্রেড করার পরামর্শ দেব।

এই মুহুর্তে ডকার-কমপোজ আপগ্রেড করার নিরাপদতম উপায় হ'ল এটি মুছে ফেলা এবং পুনরায় ইনস্টল করা।

rm /usr/local/bin/docker-compose

পুনরায় ইনস্টল করুন:

curl -L https://github.com/docker/compose/releases/download/1.11.1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
docker-compose --version
docker-compose version 1.11.1, build 7c5d5e4

এখন ফাইল ফর্ম্যাটে কোনও ত্রুটি নেই। (আমি আপনার .ml দিয়ে পরীক্ষা করিনি)।

docker-compose up
Starting compose_a_1
Starting compose_b_1

4
ধন্যবাদ কোনও কারণে, আপনার কার্ল সিএমডি ডোজ আমার জন্য উবুন্টু 16.04 এ কাজ করে না। আমি এখানে অফিসিয়াল ওয়েবসাইটে গাইড অনুসরণ করে সর্বশেষতম ডকার-রচনা সংস্করণে আপডেট করেছি। docs.docker.com/compose/install , যা উপরের মত কমবেশি একই। তবে কার্ল সেমিডিতে, ">" "-o" তে পরিবর্তন করুন।
zhihong

8
বাগটি সংস্করণ 1.8.0 এও ক্ষতিগ্রস্থ করে; সংস্করণ 1.16.1 উপকার পাওয়া যায় এবং উবুন্টু 16.04 এ পুরোপুরি কাজ করে worked কেবল উপরের পাথের সংস্করণ উপাদানটি ঠিক করুন, ব্যাক-কোট চিহ্নের কারণে এই মন্তব্যে এটি পরিষ্কারভাবে আটকানো যাবে না: /
ক্রিসিনমটাউন

কারণটি জানেন না কিন্তু curlকমান্ড কার্যকর করে না। .. অনুমতি অস্বীকার করেছে।
দীপক শর্মা

4
curlকমান্ডটি চালাতে যারা ত্রুটির মুখোমুখি হচ্ছেন তারা চেষ্টা করে দেখুন: ডকস.ডোকার.কম্পোজ
দীপক শর্মা

4
@ প্রদীপশর্মা আপনাকে কার্ল এবং chmod কমান্ডগুলি রুট ব্যবহারকারী হিসাবে প্রয়োগ করতে হবে (বা sudo ব্যবহার করুন)
lvthillo

51

আমি ডকার-কম্পোজ আপগ্রেড করে সমস্যাটি সমাধান করেছি।

উবুন্টু ১.0.০৪-তে ডকার-কমপোজ আপগ্রেড করার পদক্ষেপের নীচে পড়ে

ধাপ 1:

$which docker-compose
/usr/bin/docker-compose

ধাপ ২:

$sudo rm /usr/bin/docker-compose

ধাপ 3:

curl -L https://github.com/docker/compose/releases/download/1.20.0/docker-compose-`uname -s`-`uname -m` -o /usr/bin/docker-compose

পদক্ষেপ 4:

chmod +x /usr/bin/docker-compose

এটি আমার জন্য প্রাথমিক ওএস লোকি (0.4.1) এ ভাল কাজ করেছে for
জে আফারিয়ান

6
যেহেতু ডকার পরিবর্তনের সংস্করণটি প্রায়শই এখানে সর্বশেষতম ডকার সংস্করণ github.com/docker/compose/reLives
DrB

4
আমি অ্যাপটি-গেট থেকে যে সংস্করণটি পাচ্ছিলাম এটি ১.১17, এটিতেও এই সমস্যাটি ছিল (লিনাক্স মিন্ট ১৯)। আমি এই ধাপগুলি কীভাবে ছড়িয়ে দিয়েছি, একইভাবে কাজ করছে বলে মনে হচ্ছে 1.24.1 তে একইভাবে ডাউনলোড করেছি। ধন্যবাদ!
উইল বক

4
এটি মোছার পরে, sudo apt install docker-composeবলুন আমার কাছে ইতিমধ্যে সংস্করণ রয়েছে এবং docker-compose upআমাকে বলুন যে আমার কাছে কোনও ডকার-কম্পোজ ইনস্টলড নেই। আপনি ছেলেরা কেন ব্যবহার করছেন না? আমার এখন দুটি ইস্যু আছে।
এমব্রয়েস রাবিয়ার

14

যদি আপনার ফাইল সংস্করণটি 3.7 হয় এবং আপনি নিম্নলিখিত ত্রুটিটি পান:

ERROR: Version in "./config.yml" is unsupported. You might be seeing this error because you're using the wrong Compose file version. Either specify a supported version (e.g "2.2" or "3.3") and place your service definitions under the `services` key, or omit the `version` key and place your service definitions at the root of the file to use version 1.

সমাধানটি এখানে:

(1) sudo apt-get remove docker-composeবাsudo rm /usr/local/bin/docker-compose

(2) sudo curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

(3) sudo chmod +x /usr/local/bin/docker-compose

(4) sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

আমি আশা করি এটি সমস্যার সমাধান করবে।


4

যদি লিনাক্স / উবুন্টু ব্যবহার করা হয় তবে এটি সম্ভবত সুস্পষ্ট তবে আপনি মূল হিসাবে চালাতে সতর্ক হন careful

docker-compose -v

দেয়

docker-compose version 1.8.0, build unknown

বনাম

sudo docker-compose -v 

দেয়

docker-compose version 1.17.1, build 6d101fb

এছাড়াও নিশ্চিত করুন যে ডকর-রচনা এবং ডকার-মেশিনটি @lvthillo রাজ্য হিসাবে আপ টু ডেট রয়েছে


এটি সঠিক উত্তর হওয়া উচিত। আমি উবুন্টুতে রয়েছি, আমাকে কাজ করার জন্য সুডু কমান্ডটি ব্যবহার করতে হয়েছিল
ব্রুনোরামোনালমিডে 16'18

sudo ডকার-কম্পোজ -v আমাকে ডকর-রচনা সংস্করণটি 1.8.0 দেয়, অজানা তৈরি করুন
জুলিয়ান

এটা কি সুডোর সাথে?
গ্লেন থম্পসন

-1। সুডো খারাপ। এখানে একটি বিকল্প রয়েছে: ডকস.ডোকার.com
install

ভাল যোগ করুন, যদিও আমি এর "খারাপ" বলব না। একটি যুক্ত হিসাবে এটি অন্তর্ভুক্ত করতে উত্তর সম্পাদনা করতে নির্দ্বিধায়।
গ্লেন থম্পসন

2

আমি docker-compose --versionlvthillo এর সমাধান বাস্তবায়নের আগে করেছি এবং আমি এখনও পুরানো সংস্করণগুলি প্রদর্শিত হচ্ছে। দেখা গেল আমার ব্যাশের শেলটি যে হ্যাশটিতে ছিল সেটিকে হ্যাশের তালিকাটি ফ্লাশ করা দরকার। hash -r... আশা করি এটি অন্য কারও জন্য কার্যকর


2

পুরানো সংস্করণ আনইনস্টল করে পুনরায় ইনস্টল করার চেষ্টা করুন।

sudo apt remove docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
reboot

প্রিন্ট আউট করা উচিত

docker-compose --version
docker-compose version 1.22.0, build 1719ceb

4
আপনি কোনও ফাইল ডাউনলোড করার কারণে কেন যন্ত্রটিকে পুনরায় চালু করবেন?
সোরেন জর্নস্ট্যাড

1

আমরা প্রথমে এই কমান্ডটি চালিয়ে কোনও বিশেষ ত্রুটি না দেখে আপনাকে বলতে পারছি না

docker build . যখন আপনি ত্রুটি পেয়েছেন তখন গুগলে এটি অনুসন্ধান করুন আমার ক্ষেত্রে এটি অনুমতি ত্রুটি ছিল যখন আমি এটি কাজ করে sudo দিয়ে চেষ্টা করেছি।

আশা করি এটা তোমাকে সাহায্য করবে


0

ওএসএক্স 10.12.6 সিয়েরাতে

V1.22 বা তার চেয়ে বেশি এর জন্য পদক্ষেপ

আমার একটি নির্দিষ্ট সমস্যা / বেমানান ছিল যেখানে আমি ডকারকে পুরোপুরি আপগ্রেড করতে চাই না। আমি বর্তমানে 17.06.0-ce-ma18 এ ডকারে আটকে আছি। সুতরাং আমি কেবল ডকার-রচনা এবং অন্য কিছুই কিছুই আপগ্রেড করতে চেয়েছিলাম।

আমার পদক্ষেপগুলি:

  • ডকার-রচনাটির অবস্থান সনাক্ত করুন: which docker-compose
  • ডকার-রচনা সংস্করণ সনাক্ত করুন: docker-compose --version=docker-compose version 1.14.0, build c7bdf9e
  • পূর্ববর্তী ডকার-রচনাটির ব্যাকআপ নিন ?: mv /usr/local/bin/docker-compose /usr/local/bin/docker-compose-bak
  • প্রতিস্থাপন curl -L https://github.com/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
  • আপনি যদি সর্বশেষতম সংস্করণ নির্ধারণ করতে চান তবে https://github.com/docker/compose/releases পরীক্ষা করে দেখুন এবং উপরের সংস্করণটি সর্বশেষের সাথে প্রতিস্থাপন করুন।
  • সংস্করণ যাচাই করুন: docker-compose --version=docker-compose version 1.22.0, build f46880f
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.