我在我的 Debian 安装上安装了 nexcloud。当我跑步时:
sudo docker run -d -p 8080:80 nextcloud
我得到一些随机哈希值。然后我转到localhost:8080
设置屏幕的位置。我填写了所有文本框并选择 postgresql。
当我击中时完成设置我返回设置屏幕并显示消息:
无法创建或写入数据目录/mnt/disk0/nextcloud-data/
我应该怎么做才能使其正常工作和设置?
谢谢你的帮助
答案1
我认为你在问题中漏掉了一些东西。默认情况下 Nextcloud 不使用该目录,所以我猜您设置了NEXTCLOUD_DATA_DIR
环境变量(在dockerhub 页面)。
因为这是 docker,所以 docker 容器内的东西无法看到你的主机系统。他们有一个完全不同的自己的文件系统。
您可以做的是将主机系统中的目录挂载到容器内。因此,如果您打算使用 Nextcloud/mnt/disk0/nextcloud-data/
作为数据目录来运行,您可以执行以下操作:
sudo NEXTCLOUD_DATA_DIR=/data docker run -d -p 8080:80 --mount type=bind,source=/mnt/disk0/nextcloud-data,target=/data nextcloud
这告诉 nextcloud 使用/data
并告诉 docker 绑定/mnt/disk0/nextcloud-data/
到/data
nextcloud 的容器内部。
我刚刚检查过,似乎 Nextcloud在容器内以www-data
( ) 的形式运行。33
因此,您可能需要首先设置该目录的权限。