我正在码头的MacOS上运行超级设置,并试图让OAuth工作。
我编辑了配置文件/docker/pythonpath_dev/superset_config.py并添加了OAuth配置。
我加的一行是
AUTH_TYPE = AUTH_OAUTH这要求我导入auth类型,如下所示:
from flask_appbuilder.security.manager import (
AUTH_OID,
AUTH_REMOTE_USER,
AUTH_DB,
AUTH_LDAP,
AUTH_OAUTH,
)当我尝试用以下命令启动超集时:docker-compose -f docker-compose-non-dev.yml up
我得到以下错误:
File "/usr/local/lib/python3.7/site-packages/flask_appbuilder/security/manager.py", line 250, in __init__
from authlib.integrations.flask_client import OAuth
ModuleNotFoundError: No module named 'authlib'我对码头本身还挺陌生的。我该怎么解决这个问题?
发布于 2021-03-17 09:55:35
如果其他人遇到这种情况,解决方案是将Authlib模块添加到docker映像上的python。
将一个新的python模块添加到docker映像的过程记录在这里:https://github.com/apache/superset/blob/master/docker/README.md#local-packages
如果文件发生更改,请引用如下:
If you want to add python packages in order to test things like DBs locally, you can simply add a local requirements.txt (./docker/requirements-local.txt) and rebuild your docker stack.
Steps:
1. Create ./docker/requirements-local.txt
2. Add your new packages
3. Rebuild docker-compose
a. docker-compose down -v
b. docker-compose up重要的是运行docker-compose up和而不是 docker-compose -f docker-compose-non-dev.yml up。后者似乎没有重建码头形象。
https://stackoverflow.com/questions/66658696
复制相似问题