尝试安装 PyBOSSA 的多个问题

Multiple issues trying to install PyBOSSA

我正在尝试在 AWS EC2 实例上设置 PyBOSSA 运行 Ubuntu 18.04 LTS。我正在关注 the official instructions,到目前为止遇到了三个错误。

  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/activate
  7. pip 安装-U pip
  8. pip install -r ~/pybossa/requirements.txt

此时,我开始收到错误消息...我已将 stdout 和 stderr 复制到一个文件中,我有 uploaded here

我不确定这些错误是否是导致我后来的错误的原因,但我还是按照说明继续阅读,希望它能起作用...

  1. cp settings_local.py.tmpl settings_local.py
  2. cp alembic.ini.template alembic.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 来安装它,但那里什么也没有。我也试过 apt install rq rqscheduler rq-scheduler - 没有找到。然后我用谷歌搜索并找到了 rq-scheduler 的网站,发现我可以通过 运行 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. createdb 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 ) 对于安装,试试这个:

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%')''')

但最好由开发人员在 github 上修复 ...


结论

根据official documentation

PYBOSSA for python 3 We’ve finally migrated PYBOSSA to python 3. We’re not going to merge into master until we test it in production a bit more, so please, help us by testing it. All you have to do is basically, check out the python3 branch (migrate-python3) and run it. Then, any bug, issue you find, you just report it and we will be happy to help you.

PYBOSSA python3 版本是新迁移的,所以最终不是很稳定...我希望使用 the PYBOSSA python2.7 branch 并完全按照文档进行操作会更好。

根据 official github account 他们试图通过支持赚钱 (?...)

Get professional support You can hire us to help you with your PYBOSSA project or server (specially for python 2.7). Go to our website, and contact us.

master 分支 (https://github.com/Scifabric/pybossa/pull/1986) 的问题现已修复。您可以获取新代码并使用它。