Win10下Docker版Nextcloud安装优化笔记
发布网友
发布时间:2024-12-04 17:41
我来回答
共1个回答
热心网友
时间:2024-12-12 22:12
从6月份开始,发现手机相册占用了大量存储空间,因此急需一个“无限量”的相册自动备份盘。之前尝试过安装黑裙,在NAS(自组J3160平台)上重新安装了Hyper-V的群晖,但经过多次尝试,Nextcloud始终无法连接到MySQL,最终放弃。
最后,在NAS的Win10下直接安装了Docker,并记录了安装过程。
在安装过程中,需要打开Win10的Hyper-V功能,并在【程序和功能】中全部开启。安装完成后,可能会提示需要安装WSL 2环境扩展包,需要下载WSL补丁进行安装。最后,可以通过设置查看WSL 2是否加载成功。需要注意的是,WSL和WSL 2运行Nextcloud时有所区别。
由于安装的LTSC版本较旧,无法更新到Win10 18362及以后的版本,因此WSL 2未能成功开启。而在WSL 1代中,Nextcloud挂载本地目录时会出现问题,导致启动中断,WSL无法将/var/www/html路径挂载到本地。
在安装Docker后,可以使用命令行直接抓取MySQL镜像,并运行一个实例。在运行实例时,可以通过-p参数指定本地端口和虚拟机端口,-e参数设置数据库root的默认密码。在容器中,mysql已经运行,并显示正在运行的端口。
可以使用命令行登录到当前实例的shell,也可以在Docker界面上点击“CLI”按钮进入。之前看过很多教程,需要手动进入数据库创建用户、创建Nextcloud数据库、创建表、创建权限等。但后来发现,使用root和密码直接安装Nextcloud也是可以的,因此不再折腾MySQL。
在安装Nextcloud之前,需要先拉取版本,然后启动实例。在volume映射方面,需要将/e/nextcloud_space目录映射到本机的E:\nextcloud_space目录,/var/www/html是Nextcloud虚拟机内的路径,这个目录是Nextcloud应用和配置目录。
需要注意的是,在WSL 2环境中,不需要设置Volumes,而在WSL环境中,需要到Docker设置中添加路径共享。同时,在WSL环境下,不能将“var/www/html”路径挂载到本地,否则Nextcloud在启动时会卡在启动阶段,具体原因不详,可能是docker内部mount机制导致的。如果使用WSL环境,又想挂载本地路径,可以挂载“/var/www/html/data”,这是用户配置目录。
WSL 2环境表现良好,无需设置,推荐使用。启动后,映射的本地目录会有Nextcloud展开的安装文件,进入安装阶段。打开浏览器,访问映射的888端口,按照提示设置参数,设置管理员账号密码、root密码、Nextcloud SQL数据库名称和IP端口等,等待安装完成。
在优化调整方面,需要注意NTFS权限问题,修改config.php文件中的磁盘检测权限。在可信任域名方面,如果挂载到*,需要修改config文件。换国内源、后台任务cron.php、支持HEIC预览、支持视频预览、重新索引目录、NAT映射、Apps安装、加快预览图等问题,也需要进行相应的设置和调整。