Кажется, запуск docker-compose для Saleor застрял в цикле? - PullRequest
0 голосов
/ 15 сентября 2018

Я пытаюсь запустить docker-compose, следуя инструкциям здесь , но кажется, что он застрял в цикле. Мне удалось открыть образец сайта и внести несколько косметических изменений перед установкой Docker, но попытка сделать это с помощью docker-compose привела к созданию миниатюр 230180 раз (я запускал его всю ночь). Есть идеи?

продавец-сельдерей | продавец-сельдерей | ИНФОРМАЦИЯ saleor.core.utils Создано 6 миниатюр [PID: 11: MainThread] продавец-сельдерей | [2018-09-14 20: 03: 54,249: INFO / ForkPoolWorker-1] Создано 6 миниатюр продавец-сельдерей | [2018-09-14 20: 03: 54,295: INFO / ForkPoolWorker-1] Задача saleor.product.thumbnails.create_product_thumbnails [7a05b320-4656-4304-a8a1-e9fef3cb4cd8] успешно выполнена в 1.53202790000000s: продавец-сельдерей | [2018-09-14 20: 03: 54,298: INFO / MainProcess] Полученное задание: saleor.product.thumbnails.create_product_thumbnails [fd833000-45f5-4029-abec-e6b828ee01af] продавец-сельдерей | ИНФОРМАЦИЯ saleor.core.utils Создание миниатюр для 230179 [PID: 11: MainThread] продавец-сельдерей | [2018-09-14 20: 03: 54,302: INFO / ForkPoolWorker-1] Создание миниатюр для 230179 продавец-сельдерей | [2018-09-14 20: 03: 55,135: INFO / MainProcess] Полученное задание: saleor.product.thumbnails.create_product_thumbnails [7de5385c-7fc3-45c6-9ad0-133442b2ad0c] продавец-сельдерей | продавец-сельдерей | ИНФОРМАЦИЯ saleor.core.utils Создано 6 миниатюр [PID: 12: MainThread] продавец-сельдерей | [2018-09-14 20: 03: 56,049: INFO / ForkPoolWorker-2] Создано 6 миниатюр продавец-сельдерей | продавец-сельдерей | ИНФОРМАЦИЯ saleor.core.utils Создано 6 миниатюр [PID: 11: MainThread] продавец-сельдерей | [2018-09-14 20: 03: 56,404: INFO / ForkPoolWorker-1] Создано 6 миниатюр продавец-сельдерей | [2018-09-14 20: 03: 56,545: INFO / ForkPoolWorker-1] Задача saleor.product.thumbnails.create_product_thumbnails [96859bd2-cb9d-49d0-ac6c-0010bf3bf76d] успешно выполнена в 2.244128099999898s: нет продавец-сельдерей | ИНФОРМАЦИЯ saleor.core.utils Создание миниатюр для 230180 [PID: 11: MainThread] продавец-сельдерей | [2018-09-14 20: 03: 56,550: INFO / ForkPoolWorker-1] Создание миниатюр для 230180

Windows 10

Python 3,6

Последний (стабильный) Saleor

Ответы [ 3 ]

0 голосов
/ 27 октября 2018

Существует ошибка, поданная для этой ошибки в Saleor: https://github.com/mirumee/saleor/issues/3114

На момент написания этой статьи, это не официальное исправление, но перечислены несколько обходных путей.

0 голосов
/ 19 апреля 2019

Эта проблема уже должна быть решена , с использованием --rm документированы .

Для вашего случая при генерации миниатюр , я бы предложил запустить create_thumbnails между кодом для заполнения Example Data и docker-compose up.

Таким образом, документированный код немного изменился, как показано ниже

$ docker-compose config
$ docker-compose build

$ docker-compose run --rm saleor python3 manage.py migrate
$ docker-compose run --rm saleor python3 manage.py collectstatic --noinput --clear
$ docker-compose run --rm saleor python3 manage.py populatedb --createsuperuser
$ docker-compose run --rm saleor python3 manage.py create_thumbnails

$ docker-compose up

Обратите внимание:

  • create_thumbnails поместит миниатюры на app/media/__sized__
  • некоторые миниатюры, включая фоновые изображения для страниц категорий будут сделаны отдельно celery в app/media/__sized__/*backgrounds против полученного задания из redis.

Ниже приведено полное задание, которое в настоящее время назначено с помощью сельдерей :

Step #1: [tasks]
Step #1:   . saleor.account.emails.send_account_delete_confirmation_email
Step #1:   . saleor.account.emails.send_password_reset_email
Step #1:   . saleor.account.thumbnails.create_user_avatar_thumbnails
Step #1:   . saleor.core.analytics.ga_report
Step #1:   . saleor.core.utils.update_conversion_rates_from_openexchangerates
Step #1:   . saleor.dashboard.emails.send_promote_customer_to_staff_email
Step #1:   . saleor.dashboard.emails.send_set_password_customer_email
Step #1:   . saleor.dashboard.emails.send_set_password_staff_email
Step #1:   . saleor.order.emails.send_fulfillment_confirmation
Step #1:   . saleor.order.emails.send_fulfillment_update
Step #1:   . saleor.order.emails.send_order_confirmation
Step #1:   . saleor.order.emails.send_payment_confirmation
Step #1:   . saleor.product.tasks.update_variants_names
Step #1:   . saleor.product.thumbnails.create_category_background_image_thumbnails
Step #1:   . saleor.product.thumbnails.create_collection_background_image_thumbnails
Step #1:   . saleor.product.thumbnails.create_product_thumbnails

Весь процесс будет занимать много памяти, если вы упустите последовательность. Вы также можете compose up услуги одна за другой . Я нашел правильную последовательность, как показано ниже:

$ docker-compose up -d redis
$ docker-compose up -d celery
$ docker-compose up -d postgres

$ docker-compose up saleor

Объедините все вместе

$ docker-compose config
$ docker-compose build

$ docker-compose run --rm saleor python3 manage.py migrate
$ docker-compose run --rm saleor python3 manage.py collectstatic --noinput --clear
$ docker-compose run --rm saleor python3 manage.py populatedb --createsuperuser
$ docker-compose run --rm saleor python3 manage.py create_thumbnails

$ docker-compose up -d redis
$ docker-compose up -d celery
$ docker-compose up -d postgres

$ docker-compose up saleor
0 голосов
/ 19 сентября 2018

Какую версию Saleor вы используете?

Не могли бы вы попробовать запустить:

docker-compose up -d 
docker-compose exec web /bin/sh -c ' python3  manage.py migrate && python3 manage.py collectstatic && python3 manage.py populatedb --createsuperuser'
...