docker-compose Superset的权限被拒绝

时间:2019-03-11 18:52:56

标签: docker docker-compose superscript

我正在尝试让Superset在ubuntu服务器上运行。我引用了Superset页面中的步骤,如下所示:

git clone https://github.com/apache/incubator-superset/
cd incubator-superset/contrib/docker
# prefix with SUPERSET_LOAD_EXAMPLES=yes to load examples:
docker-compose run --rm superset ./docker-init.sh
# you can run this command everytime you need to start superset now:
docker-compose up

我已经修复了端口5432上有关正确版本的docker-compose和postgress地址绑定问题的初始问题。因此,在修复了这些问题后,我的docker compose run命令

docker-compose run --rm superset ./docker-init.sh

工作正常,它要求我设置用户名和密码。

最后要使容器运行,我运行了最终命令

docker-compose up. 

在我的Mac上,它将运行redis,postrgre容器,然后为我提供一个localhost:8088以便我使用登录信息访问Superset UI。

但是在Ubuntu上,当我运行它时,我首先得到它:

enter image description here

看起来它正在运行redis和postgres容器。

但是,这给了我创建某些mkdir目录的权限被拒绝的错误。

enter image description here

请注意,我以root用户身份运行它。

此外,我的docker compose版本在1.23.2上还不错,而我的docker和docker-compose都安装在

/usr/bin/docker and not /usr/local/bin/docker. 

但是我认为这不应该成为问题。

任何帮助哪里出错了,我该如何解决?

谢谢

编辑:

好吧,我看了Github上提到的同一问题。并建议在docker-compose.yml文件中仅将其用于生产而不用于开发。

当我这样做时,似乎现在不会抛出相同的错误

docker-compose up.

enter image description here

但是,当我打开localhost:8088时,它没有连接到UI。

1 个答案:

答案 0 :(得分:0)

尝试一下:

mkdir ../../assets
chmod -R 777 ../../superset/assets/

docker-compose.yml#L64中所设置,开发时它以../../superset作为卷。但是,容器在主机中没有任何权限,因此解决方案是自己创建目录并为其授予必要的权限。