第一步安装docker
yumupdate
yum install -y yum-utils gcc gcc-c++
添加docker-yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
安装Docker社区版并启动
yum -y install docker-ce docker-ce-cli containerd.io
systemctl start docker
第二步配置加速源,并重启docker
配置Docker国内镜像加速,由于国内网络问题,不修改后面拉取镜像的速度会太慢更新:由于下面这个源仍然速度比较慢,强烈推荐使用阿里云等的国内加速源)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://5fyefais.mirror.aliyuncs.com"]
}
EOF
重新启动服务
systemctl daemon-reload
systemctl restart docker
第三步安装数据库
使用以下命令安装数据库
docker run --name=nextcloud_db \
-e MYSQL_ROOT_PASSWORD=root \
-v /nextcloud_mysql/conf:/etc/mysql/conf.d \
-v /nextcloud_mysql/data:/var/lib/mysql \
-d -p 33306:3306 --restart=always mysql:5
第四步安装依赖包及安装nextcloud
安装依赖包
docker run -d --name=nextcloud --privileged \
--link nextcloud_db:db -v /nextcloud:/var/www/html \
-p 48080:80 --restart=always nextcloud:21.0.5
第五步登录网盘
查看IP,使用IP+:48080登录web页面
安装数据库,可以选mysql、MBsql或者不安装
前面设置了mysql,使用我们也使用mysql
到这一步,就可以使用浏览器ip加48080端口号,打开
第六步设置内网穿透(使用公网可跳过)
配置好网页后,使用zerotier配置内网穿透,或者可以使用公网IP,云服务器使用
登录https://my.zerotier.com/注册一个账号,配置网络,设置子网IP
在不同环境下,下载对应安装包,并加入网络
在官网控制器上授权加入。
Linux安装方式
curl -s https://install.zerotier.com | sudo bash
启动服务
systemctl start zerotier-one.service
zerotier-cli status
加入网络
zerotier-cli join +网络ID(若要离开网络使用zerotier-clileave+网络ID)
查看网络列表
zerotier-cli listnetworks
要再网页同意ip加入
可以尝试去ping已加入网络的其他IP,查验是否有效
手机打开zerotier官网,下载安卓/苹果客户端,然后加入zerotier网络
第七步添加信任ip
最后得设置ip信任,通过一个新的IP访问时,可能不被信任,需要配置
1.若出现信任域问题,编辑NextCloud配置文件/nextcloud/config/config.php,在trusted_domains处添加对应地址:
其他优化及解决
1.添加定时任务,这个最好加上,要不然速度会慢很多
在宿主机执行crontab -e */5 * * * * docker exec --user www-data nextcloud php /var/www/html/cron.php
2.杂项:分区&格式化&开机挂载
使用fdisk划出一个分区并挂在到/nextcloud,比如分区为/dev/sda3
fdisk新建分区后,先刷新一下:partprobe /dev/sda
格式化:mkdir /nextcloud ;mkfs -t ext4 /dev/sda3
开机挂载:编辑vim /etc/fstab,加入/dev/sda3 /nextcloud ext4 defaults 0 0
验证挂载:mount -a