Apache Superset [Errno 13] 权限被拒绝:'/usr/local/lib/python3.5/site-packages/superset/app'
Apache Superset [Errno 13] Permission denied: '/usr/local/lib/python3.5/site-packages/superset/app'
我使用 Apache Superset for data exploration. I followed the installation instructions 并且在使用该应用程序时没有遇到任何问题。
但是,在我安装了community maintained docker image I tried to upload a CSV file可视化之后,出现了如下错误:
([Errno 13] Permission denied: '/usr/local/lib/python3.5/site-packages/superset/app')
我用sqlite as DB backend, and mounted the DB volume as suggested.
其他用户在不同的设置和配置下遇到了同样的问题。他们提出的问题(#4576, #4287)还没有解决。
该问题似乎与数据库访问权限无关,用户使用的不同数据库后端和配置证明了这一点。
解决方案
将以下行添加到您的 superset_config.py
文件,重建并 运行 您的 docker 图像:
import os
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
# The file upload folder, when using models with files
UPLOAD_FOLDER = BASE_DIR + '/app/static/uploads/'
# The image upload folder, when using models with images
IMG_UPLOAD_FOLDER = BASE_DIR + '/app/static/uploads/'
您还可以将路径更改为 在您的 docker 图片 .
中要保存上传文件和图片的任何位置
问题原因:
Superset 正在尝试将 CSV 文件上传到错误消息中显示的路径。该路径为root用户所有,Superset没有权限。
要解决此问题,您需要更改 Superset 上传 CSV 文件的路径。这可以通过设置如上所示的几个配置轻松完成。
这也应该可以解决上传照片以用于 Superset 用户个人资料时的问题。
上述错误主要与文件夹权限有关。
您可以通过使用 root 权限执行将其设置为 运行。
例如,在我的例子中,我在 运行ning superset runserver -d -p8080
.
之后得到了这个错误
请改用命令 sudo superset runserver -d -p8080
,您将能够上传您的 csv 文件。
注意:指定的其他标志和端口号可以根据需要更改。
另请注意: 只有当您使用 root 权限安装 superset 时才会出现此权限错误,即您可能不是 pip install superset
使用 sudo pip install superset
希望有一天它能对某人有所帮助。
我使用 Apache Superset for data exploration. I followed the installation instructions 并且在使用该应用程序时没有遇到任何问题。
但是,在我安装了community maintained docker image I tried to upload a CSV file可视化之后,出现了如下错误:
([Errno 13] Permission denied: '/usr/local/lib/python3.5/site-packages/superset/app')
我用sqlite as DB backend, and mounted the DB volume as suggested.
其他用户在不同的设置和配置下遇到了同样的问题。他们提出的问题(#4576, #4287)还没有解决。
该问题似乎与数据库访问权限无关,用户使用的不同数据库后端和配置证明了这一点。
解决方案
将以下行添加到您的 superset_config.py
文件,重建并 运行 您的 docker 图像:
import os
BASE_DIR = os.path.abspath(os.path.dirname(__file__))
# The file upload folder, when using models with files
UPLOAD_FOLDER = BASE_DIR + '/app/static/uploads/'
# The image upload folder, when using models with images
IMG_UPLOAD_FOLDER = BASE_DIR + '/app/static/uploads/'
您还可以将路径更改为 在您的 docker 图片 .
中要保存上传文件和图片的任何位置问题原因:
Superset 正在尝试将 CSV 文件上传到错误消息中显示的路径。该路径为root用户所有,Superset没有权限。
要解决此问题,您需要更改 Superset 上传 CSV 文件的路径。这可以通过设置如上所示的几个配置轻松完成。
这也应该可以解决上传照片以用于 Superset 用户个人资料时的问题。
上述错误主要与文件夹权限有关。 您可以通过使用 root 权限执行将其设置为 运行。
例如,在我的例子中,我在 运行ning superset runserver -d -p8080
.
请改用命令 sudo superset runserver -d -p8080
,您将能够上传您的 csv 文件。
注意:指定的其他标志和端口号可以根据需要更改。
另请注意: 只有当您使用 root 权限安装 superset 时才会出现此权限错误,即您可能不是 pip install superset
使用 sudo pip install superset
希望有一天它能对某人有所帮助。