Docker部署Nextcloud私有网盘(个人心得,仅供参考)
1、系统安装 系统选择Centos 7,系统安装方法就不详细说了
2、安装Docker容器 Centos系统安装docker容器十分方便,推荐使用Docker官方的安装方式,依次执行命令
# yum install -y yum-utils device-mapper-persistent-data lvm2
# docker install -y docker
安装完毕后,设置开机启动,开启Docker服务
# systemctl start docker
# systemctl enable docker
2.2安装Nextcloud服务端、数据库 docker hub镜像仓库自带有nextcloud的镜像,可以直接拉取
# docker pull nextcloud
# docker pull mysql
2.3启动 启动数据库服务器端
docker run --name mysql -d -p 3306:3306 \
-e MYSQL_ROOT_PASSWORD=123 \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=tom \
-e MYSQL_PASSWORD=123 mysql
启动Nextcloud服务器端
docker run --name nextcloud -p 80:80 -v /data/nextcloud:/var/www/html/data -d nextcloud
参数说明: –name:设定容器名称为nextcloud -p 80:80 :端口映射,将宿主机80端口映射到容器中的80端口 -v /data/nextcloud:/var/www/html/data将容器中项目的data目录映射到本地/data/nextcloud目录下方便配置和数据保存 -d 是以后台形式启动
2.5使用Nextcloud 设置上面所有的配置后,登陆自己的私有网盘 发现报错 排查发现是忘记关掉防火墙了,3306端口也忘记开放了 开放 80 端口对外访问
firewall-cmd --zone=public --add-port=3306/tcp --permanent
更新防火墙规则:
firewall-cmd --reload
然后问题就解决了,Nextcloud部署成功
使用花生壳来进行内网穿透简单发布 回到docker镜像,修改nextcloud的文件,修改用于访问 Nextcloud 服务器的所有 URL 在config.php文件中的trusted_domains设置下列入白名单 。仅当用户将浏览器指向trusted_domains设置中列出的 URL 时,才允许用户登录 Nextcloud 。您可以使用 IP 地址和域名。典型的配置如下所示:
'trusted_domains' =>
array (
0 => 'localhost',
1 => 'server1.example.com',
2 => '192.168.1.50',
3 => '[fe80::1:50]',
),
我的是这样配置的,加了一条域名 保存退出就可以通过外网访问了
|