Pups::ExecError

Привет! Я хотел настроить Multisite, но, похоже, эта ошибка имеет другие планы:

Pups::ExecError: cd /var/www/discourse && sudo -E -u discourse bundle exec rake otherside:migrate failed with return #<Process::Status: pid 776 exit 1>

Не уверен, но, возможно, это поможет

Установлены ли у вас какие-либо плагины? Некоторые из них несовместимы с мультисайтом.

Погодите, что? Это же multisite, а не otherside?

Я переименовал это, чтобы скрыть имя, которое я там фактически использую.

Это уже решено! Оказалось, что мне также пришлось изменить имя файла $home/config/otherside.yml.

Пожалуйста, расскажите подробнее о том, что вы делали, я совершенно не улавливаю вашу мысль. Вы скрывали имя? Переименовывали файлы конфигурации? И вы не посчитали нужным упомянуть об этом, когда подавали запрос в службу поддержки?

У меня следующая конфигурация:

hooks:
  after_postgres:
     - exec: sudo -u postgres createdb discourse_rubyhub || exit 0
     - exec:
          stdin: |
            grant all privileges on database discourse_rubyhub to discourse;
          cmd: sudo -u postgres psql discourse_rubyhub
          raise_on_fail: false
  
     - exec: /bin/bash -c 'sudo -u postgres psql discourse_rubyhub <<< "alter schema public owner to discourse;"'
     - exec: /bin/bash -c 'sudo -u postgres psql discourse_rubyhub <<< "create extension if not exists hstore;"'
     - exec: /bin/bash -c 'sudo -u postgres psql discourse_rubyhub <<< "create extension if not exists pg_trgm;"'

  after_code:
    - exec:
        cd: $home/plugins
        cmd:
          - mkdir -p plugins
          - chmod -R 755 plugins
          # Official
          - git clone https://github.com/discourse/docker_manager.git
          - git clone https://github.com/discourse/discourse-adplugin.git
          - git clone https://github.com/discourse/discourse-solved.git
          - git clone https://github.com/discourse/discourse-topic-voting.git
          - git clone https://github.com/discourse/discourse-post-voting.git
          - git clone https://github.com/discourse/discourse-oauth2-basic.git
          - git clone https://github.com/discourse/discourse-data-explorer.git
          - git clone https://github.com/discourse/discourse-spoiler-alert.git
          - git clone https://github.com/discourse/discourse-whos-online.git
          - git clone https://github.com/discourse/discourse-calendar.git
          - git clone https://github.com/discourse/discourse-ai.git
          - git clone https://github.com/discourse/discourse-checklist.git
          - git clone https://github.com/discourse/discourse-staff-alias.git
          - git clone https://github.com/discourse/discourse-assign.git
          - git clone https://github.com/discourse/discourse-shared-edits.git
          - git clone https://github.com/discourse/discourse-translator.git
          - git clone https://github.com/discourse/discourse-theme-creator.git
          # Paviliondev
          - git clone https://github.com/paviliondev/discourse-discord-bot.git
          - git clone https://github.com/paviliondev/discourse-ratings.git
          - git clone https://github.com/paviliondev/discourse-multilingual.git
          - git clone https://github.com/paviliondev/discourse-news.git
          - git clone https://github.com/paviliondev/discourse-events.git
          - git clone https://github.com/paviliondev/discourse-layouts.git
          - git clone https://github.com/paviliondev/discourse-custom-wizard.git
          # Coopcreds
          - git clone https://github.com/coopcreds/discourse-verifiable-credentials.git

  before_bundle_exec:
    - file:
        path: $home/config/multisite.yml
        contents: |
         multisite:
           adapter: postgresql
           database: discourse_rubyhub
           pool: 25
           timeout: 5000
           db_id: 2
           host_names:
             - rubyhub.store

  after_bundle_exec:
    - exec: cd /var/www/discourse && sudo -E -u discourse bundle exec rake multisite:migrate

Вместо multisite везде было указано rubyhub, за исключением имени файла конфигурации .yml! Именно это и вызвало ошибку!

Но какой порт HTTP, или как его изменить в настройках multisite, чтобы я мог настроить дополнительный обратный прокси для rubyhub.store?

Вы можете изменить его только для всех сайтов сразу, а не для одного.

Как это должно работать? Как веб-сервер должен узнать, что теперь добавляется другой сайт? Обратные прокси не могут использовать один и тот же порт несколько раз.

Вы отправляете все запросы в одно и то же место. Я могу определить по заголовкам, с какого сайта это.

Однако под rubyhub.store нет Discourse

Вы следовали настройке мультисайта с Docker?

Да, я выполнил