最近,有一个特别的人和我抱怨手机内存太小,好多有纪念意义的照片,

没地方存放,我突然想到,我最初搭建服务器的一大初衷就是个人网盘啊,

故,立马着手搭建,考虑我现在只有一个机械盘,

斥巨资买了一个固态的,到货当天晚上就

方案是docker来pull一个nextcloud,mysql也是docker里的账户信息在mysql,数据存在另外一张盘里,

上步骤:

fdisk -l
mkdir /mnt/为挂载硬盘起一个名字
mount /dev/sda /mnt/为挂载硬盘起一个名字
umount /mnt/sda

首先,插上盘,fdisk -l一下,找找刚刚插上的位置,

mkdir一个新文件夹,mount挂载上去,

pull 一个网盘的镜像(当然又慢又卡是要换源的)

docker run -d --name nextcloud -p 8080:80 -v /mnt/为挂载硬盘起一个名字/nextcloud:/var/www/html --privileged=true docker.io/nextcloud

开启的时候得注意上面–privileged=true这一句,如果是centos的话,

docker里的root名存实没有,得通过这一句获取硬root,

docker exec -it mysql5.7 /bin/bash
mysql -uroot -p*********
create database nextcloud;

数据库这块,进去记得-u和你的root用户名之间不要有空格哈哈,

-p和你用户的密码也不能有空,当然你要没有mysql也得pull一下,

记得设开机自启,docker的开机自启和容器的开机自启不要搞混了,

如果说,你本地这个硬盘可能容易断电或者拔下来,建议不要设开机自启,

万一说,它因为一些什么原因,还没挂载上,就自启动了容器,就芭比q了

还有一点,这个网盘上传上来的数据都在你这个地方:/mnt/为挂载硬盘起一个名字/nextcloud

数据库只存一些用户信息和路径了什么的。

解释一下这块,其中空格挺多,空格参照上面

docker run
 -d        //后台运行
 --name nextcloud        //容器的名字
 -p 8080:80        //端口映射,前面是你容器外的主机端口,后面是容器内的端口
 -v /mnt/为挂载硬盘起一个名字/nextcloud:/var/www/html          //存储路径映射,前面也是容器外主机的,后面容器内
 --privileged=true         //获取硬root
docker.io/nextcloud         //容器用到的镜像