Docker安装私有云盘NextCloud

Docker安装私有云盘NextCloud

经验文章nimo972024-12-20 10:45:509A+A-

现在很多云服务器都推出了99一年的入门级服务器,这个配置跑NextCloud完全没问题。硬盘一般为40G,日常办公资料同步也够了。

我的服务器已经安装了Docker以及数据库,所以直接直接创建NextCloud的数据库和用户即可。

CREATE DATABASE nextcloud;
CREATE USER 'nextcloud'@'%' IDENTIFIED BY '1234567890';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'%' with grant option;

然后拉取最新的镜像

sudo docker pull nextcloud:latest

这个版本是包含apache的,如果服务器已经安装了nginx,可以用fpm版本。

然后启动

sudo docker run --name nextcloud -itd -p 9001:80 -v /home/nextcloud/www:/var/www/html -e MYSQL_DATABASE=nextcloud -e MYSQL_USER=nextcloud -e MYSQL_PASSWORD=1234567890 -e MYSQL_HOST=127.0.0.1 nextcloud:latest

参数说明:

-p 9001:80 如果使用包含apache的镜像,则端口为80,如果是fpm则端口为9000。

-v /home/nextcloud/www:/var/www/html 目录中包含应用代码以及数据。如果想把应用和数据存储到不同目录下,可以看下官方文档。

-e MYSQL_DATABASE 数据库名称

-e MYSQL_USER 数据库用户

-e MYSQL_PASSWORD 数据库密码

-e MYSQL_HOST 数据库地址


nginx比较简单,直接用proxy_pass做请求转发即可。


然后说下遇到的问题。因为使用了ngxin做请求转发,所以在使用客户端时,输入地址会报错:尽管登录URL是以HTTPS启动的,但轮询URL并不以HTTPS开头。登录将不可能,因为这可能是一个安全问题。请与管理员联系。

只需要在配置文件中添加代理白名单即可。

cd /home/nextcloud/www
vim config.php
'trusted_domains' =>
  array (
          0 => '127.0.0.1:9001',
          1 => 'nextcloud.my', // 添加访问域名
          2 => '121.121.121.121' // 添加服务器ip
  ),
  'overwriteprotocol' => 'https', // 添加协议
  'overwritehost' => 'nextcloud.my', // 添加访问域名

点击这里复制本文地址 以上内容由nimo97整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!
qrcode

尼墨宝库 © All Rights Reserved.  蜀ICP备2024111239号-7