[Docker] 基于Docker的NextCloud私有云盘搭建

毫无含量的水博客。

1.准备工作

  • 安装Docker,假定CentOS:
1
yum install -y docker
  • 设置Docker自启
1
2
systemctl start docker
systemctl enable docker
  • 准备相关镜像
1
2
docker pull docker.io/nextcloud
docker pull docker.io/mariadb

2.运行容器

  • 数据库容器
1
2
3
4
5
6
docker run -d --name db_nextcloud \
-v /var/www/nextcloud/mysqldb:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=ROOT_PWD \
-e MYSQL_DATABASE=nextcloud \
-e MYSQL_USER=nextcloud \
-e MYSQL_PASSWORD=YOUR_PWD mariadb
  • nextcloud容器

Screen Shot 2019-09-10 at 21.34.21.png

3.网页配置

Screen Shot 2019-09-10 at 20.57.10 copy.png

好的,水完了。

看来还没完

4.将本地端口映射到云端

  • 修改frpc.ini
1
vim FRP_PATH/frpc.ini
  • 添加
    1
    2
    3
    4
    5
    [http-nextcloud]
    type = tcp
    local_ip = 192.168.1.101
    local_port = 40080
    remote_port = 40080

之后就可以在远程主机 remote_ipaddr:40080上看到页面了

5.域名加入到信任列表

如果按照本文的步骤,那么到了这个地方你应该会碰到一个问题:通过域名访问云盘时,NextCloud页面会提示请求域名未加入到信任列表。按照页面给出的提示,这个问题应该很好解决:

1
vim /var/www/nextcloud/config/config.php

trusted_domains下添加:

1
2
3
4
5
6
'trusted_domains' =>
array (
0 => '192.168.1.253:40080',
1 => 'YOUR_REMOTE_ADDR',
2 => 'YOUR_DOMAINS',
)