Compose: service_run_+1

Dibuat pada 31 Mar 2017  ·  3Komentar  ·  Sumber: docker/compose

Saya memiliki dua cronjob untuk layanan run php secara bersamaan.

Hanya satu perintah run dieksekusi dengan benar

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

Semua 3 komentar

Itu mungkin berarti wadah sedang dibuat antara waktu kami memeriksa ketersediaan dan saat kami benar-benar mengeluarkan perintah create . Solusinya adalah menjalankan kedua pekerjaan itu pada waktu yang sedikit berbeda (interval 5 detik kemungkinan sudah cukup)

Saya menemukan ini juga dengan menjalankan docker-compose up foo bar & docker-compose up baz bar terprogram di tab tmux yang berbeda. Sepertinya jika pembuatan gagal, itu harus menjalankan kembali pemeriksaan dan mencoba untuk (menunggu dan) melampirkan.

Kasus reproduksi yang sangat sederhana:

➤ 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

Dalam kasus saya, masalahnya adalah CI yang memicu pekerjaan paralel berdasarkan jadwal internalnya. Sangat menyedihkan harus meretas penjadwalan itu hanya karena ini.

Apakah halaman ini membantu?
0 / 5 - 0 peringkat