Compose: service_run_ + 1

تم إنشاؤها على ٣١ مارس ٢٠١٧  ·  3تعليقات  ·  مصدر: docker/compose

لديّ اثنين من cronjob مقابل خدمة run php في نفس الوقت.

أمر واحد فقط run تنفيذه بشكل صحيح

Cannot create container for service php: Conflict. The container name "/folder_php_run_1" is already in use by container {hashhere}. You have to remove (or rename) that container to be able to reuse that name.
Command exited with non-zero status 1
arerun kinbug

ال 3 كومينتر

ربما يعني ذلك أنه يتم إنشاء الحاوية بين الوقت الذي نتحقق فيه من التوفر والوقت الذي نصدر فيه الأمر create . سيكون الحل هو تشغيل هاتين الوظيفتين في أوقات مختلفة قليلاً (من المحتمل أن تكون فترة 5 ثوانٍ كافية)

لقد واجهت هذا أيضًا من خلال تشغيل docker-compose up foo bar & docker-compose up baz bar برمجيًا في علامات تبويب tmux مختلفة. يبدو أنه في حالة فشل الإنشاء ، يجب إعادة تشغيل الفحص ومحاولة (الانتظار و) الإرفاق.

حالة استنساخ بسيطة للغاية:

➤ cat docker-compose.yml 
version: "2.2"
services:
  test:
    image: alpine

➤ docker-compose run --rm test true
Creating network "test_default" with the default driver

➤ docker-compose run --rm test docker-compose run --rm test true &; docker-compose run --rm test true
ERROR: Cannot create container for service test: Conflict. The container name "/test_test_run_1" is already in use by container "76db8705667961966468d66d0667417862ad6edb3fb4c09b95a8ebab4ec36bf8". You have to remove (or rename) that container to be able to reuse that name.
Job 4, 'docker-compose run --rm test do…' has ended

في حالتي ، تكمن المشكلة في وجود CI الذي يطلق وظائف متوازية بناءً على جدوله الداخلي. إنه لأمر محزن للغاية أن تضطر إلى اختراق هذا الجدول فقط بسبب هذا.

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات