docker搭建nextcloud文件同步服务器

本文主要介绍了通过docker搭建nextcloud的方法以及处理无法访问的方法。

1、查找并下载nextcloud镜像docker search nextclouddocker pull nextcloud

2、生成容器,命令如下:

docker run -d --restart=always --name nextcloud -p 8000:80 -v /nextcloud:/var/www/html/data nextcloud

-p表示将容器内80端口映射到主机8000端口,-v表示将容器内 /var/www/html/data 映射到主机的/nextcloud目录,后续可以在主机的/nextcloud目录查看nextcloud的文件;

3、安装流程依次如下图所示,本文中的nextcloud为个人使用,所以数据库采用sqlite;

4、安装完后通过其他IP访问会提示通过不被信任的域名访问,需要修改容器中/var/www/html/config/config.php,添加

preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME']

如下图所示:

'trusted_domains' => array(
        0 => '127.0.0.1',
        1 => preg_match('/cli/i',php_sapi_name())?'127.0.0.1':$_SERVER['SERVER_NAME'],
),

该文件位于容器中,可进入容器直接修改,或者通过如下命令将文件复制到主机,修改完成后从主机复制回去(使用该方法需注意config.php的权限,否则会出现网页无法写入配置的问题。):

docker cp nextcloud:/var/www/html/config/config.php /tmp

docker cp /tmp/config.php nextcloud:/var/www/html/config/config.php

5、本地客户端设置需注意,地址需要改为http://192.168.1.1:8000等形式,默认的https无法连接;

发表评论