Несколько проблем при попытке установить PyBOSSA - PullRequest
2 голосов
/ 30 марта 2020

Я пытаюсь настроить PyBOSSA на экземпляре AWS EC2, работающем под управлением Ubuntu 18.04 LTS. Я следую официальным инструкциям и до сих пор столкнулся с тремя ошибками.

  1. sudo apt-get install -y git postgresql postgresql -all postgresql -server-dev-all libpq-dev python -psycopg2 libsasl2-dev libldap2-dev libssl-dev python -virtualenv python -dev build-essential libjpeg-dev libssl-dev libffi-dev dbus libdbus-1- dev libdbus-glib-1-dev libldap2-dev libsasl2-dev python -pip python3 -pip redis-server
  2. cd ~
  3. git клон --recursive https://github.com/Scifabric/pybossa
  4. cd pybossa
  5. virtualenv -p python3 env (я явно использую Python3, поскольку в моей системе также установлено Python 2.7).
  6. источник env / bin / activ
  7. pip install -U pip
  8. pip install -r ~ / pybossa / needs.txt

На этом Я начинаю получать сообщения об ошибках ... Я скопировал stdout и stderr в файл, который я загрузил сюда .

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

  1. cp settings_local.py.tmpl settings_local.py
  2. cp alembi c .ini.template alembi c .ini
  3. redis-server contrib / sentinel.conf --sentinel

Я заметил, что версия сервера Redis была 4.0.9 (в инструкциях говорится, что она должна быть v2 .6 или выше).

Вывод при запуске сервера Redis был следующим:

30284:X 30 Mar 03:09:22.004 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo
30284:X 30 Mar 03:09:22.004 # Redis version=4.0.9, bits=64, commit=00000000, modified=0, pid=30284, just started
30284:X 30 Mar 03:09:22.004 # Configuration loaded

... Я понимаю, что все в порядке ...

  1. rqscheduler --host 127.0.0.1

Эта команда не была установлена ​​в моей системе. Я пытался использовать apt для его установки, но там ничего не было. Я также попытался установить aq rq rqscheduler rq-scheduler - ничего не найдено. Затем я гуглил и нашел веб-сайт для rq-планировщика и обнаружил, что могу установить его, запустив pip install rq-scheduler

, который установлен правильно. Тем не менее, выполнение команды rqscheduler --host 127.0.0.1 в терминале все равно не удалось: rqscheduler: command not found.

Зная, что это пакет Python, я подумал, может быть, мне нужно добавить python3 в начало команда: python3 rqscheduler --host 127.0.0.1. Ответ: python3: can't open file 'rqscheduler': [Errno 2] No such file or directory.

Я также попытался pip3 install rq-scheduler (который отлично установлен) и затем запустил команду, но столкнулся с той же ошибкой.

Я был бы признателен, зная, как запустить этот процесс , но для целей этого теста я пропустил настройку Regis и планировщика и продолжил с инструкциями PyBOSSA:

  1. sudo su postgres
  2. createuser -d -P pybossa
  3. (установлен пароль)
  4. createb pybossa -O pybossa
  5. выход
  6. python3 cli.py db_create

... а затем я получил эту ошибку:

  File "cli.py", line 162
    '''SELECT id, created FROM task_run WHERE created LIKE ('\x%')''')
    ^
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 54-55: truncated \xXX escape

Я вместо этого попробовал python cli.py db_create, на всякий случай, если это сработает, и получил другую ошибку:

python cli.py db_create
ValueError: invalid \x escape

Итак, я вижу три отдельных проблемы:

  1. Установка необходимых пакетов PyBOSSA Python.
  2. Проблема с командой rqscheduler.
  3. Ошибка при запуск сервера PyBOSSA.

Что означают эти ошибки?

1 Ответ

1 голос
/ 17 апреля 2020

1) Для установки попробуйте следующее:

virtualenv env 
source env/bin/activate
sudo apt install python3-pip
pip3 install -r requirements.txt

Который завершился без ошибок.


2) Попробуйте:

pip install rq-scheduler==0.9.1

или

pip3 install rq-scheduler==0.9.1

3) Символ \ необходимо экранировать (например, \\) в python.

Таким образом, вы можете изменить строку cli.py 162 (с помощью текстового редактора) с:

 '''SELECT id, created FROM task_run WHERE created LIKE ('\x%')''')

Кому:

 '''SELECT id, created FROM task_run WHERE created LIKE ('\\x%')''')

Но лучше будет исправить с помощью dev на github ...


ЗАКЛЮЧЕНИЕ

Согласно официальной документации ,

PYBOSSA для python 3 Мы наконец-то перенесли PYBOSSA в python 3. Мы не Я собираюсь слиться с мастером, пока мы не протестируем его в производстве, поэтому, пожалуйста, помогите нам, проверив его. Все, что вам нужно сделать - это проверить ветку python3 (migrate- python3) и запустить ее. Затем, если вы обнаружите какую-либо ошибку, вы просто сообщите об этом, и мы будем рады вам помочь.

Версия PYBOSSA python3 недавно перенесена, поэтому в конечном итоге она не очень стабильна ... I ожидайте, что будет лучше использовать ветку PYBOSSA python2 .7 и точно следовать документации.

И согласно официальной учетной записи github они пытаются сделать деньги с поддержкой (? ...)

Получите профессиональную поддержку Вы можете нанять нас, чтобы помочь вам с вашим проектом или сервером PYBOSSA (специально для python 2.7). Go на наш сайт и свяжитесь с нами.

...