几个注意点:
1.提示缺少ldap模块:
yum install openldap-devel //解决安装ldap时缺少lber.h文件
pip3 install python-ldap
2.提示警告:
Warning: WebSocket transport not available. Install gevent-websocket for improved performance.
解决:
pip3 install gevent-websocket
3.其他一些需要安装的模块(未列全):
pip3 install jsonpickle
pip3 install devtools
3.需要安装redis
并在redis/src中执行 ./redis-server
4.打开localhost:8081时报错:
4.1 ERROR:engineio.server:The client is using an unsupported version of the Socket.IO or Engine.IO protocols (further occurrences of this error will be logged with level INFO)
解决:
pip3 install Flask-SocketIO==4.3.1
pip3 install python-engineio==3.13.2
pip3 install python-socketio==4.6.0
//可通过
pip3 list | grep sock
来查询已安装版本
4.2如果出现关于flask_security 没有hash_password方法的错误,则可能此方法在flask_security.utils中,在usermanage.py开头加上以下代码:
from flask_security.utils import hash_password
#并将此py文件中的一句代码改成
user_datastore.create_user(
username=username,
password=hash_password("password"), #改此句
nickname=user,
session_id=sid,
selected_proposal=selected_proposal,
limsdata=json.dumps(lims_data),
roles=self._get_configured_roles(user),
)
在改完后可能出现4.23的错误
4.23如果出现not null constraint failed 相关错误,如下
(sqlite3.IntegrityError) NOT NULL constraint failed: user.fs_uniquifier
则需要在usermodels.py文件中的一行代码改成如下代码
fs_uniquifier = Column(String(255))
再在/temp目录下删除关于mxcube的缓存
即可。
另:如果提示缺少一些硬件文件则可以在beamline_config.yml中注释掉相关硬件,但不能注释以下两行:
- queue_manager: queue.xml
- queue_model: queue_model.xml
否则会报错 'NoneType' object has no attribute 'get_model_root'