个人云盘NextCloud部署方案

1.简述

 使用开源软件Nextcloud实现,总体部署是使用Dokcer+Nextcloud+mysql。

2.部署方案

2.1 安装Docker
依次执行以下命令:
(1)yum安装docker
		yum install -y docker
(2) 启动Docker及设置Docker自启动
		systemctl start docker
		systemctl enable docker

2.2 下载Nextcloud镜像

依次执行以下命令:
(1)搜索nextcloud镜像
  	docker search nextcloud
(2)拉取官方镜像
  	docker pull docker.io/nextcloud

2.3 Docker启动mysql

docker run --name=nextcloud_db -e MYSQL_ROOT_PASSWORD=nextcloud -e MYSQL_DATABASE=nextcloud -e MYSQL_USER=nextcloud -e MYSQL_PASSWORD=nextcloud -v /var/www/nextcloud/mysqldb:/var/lib/mysql -d mysql:5
  
命令解释:
--name=nextcloud将容器命名为nextcloud_db

-v /var/www/nextcloud/mysqldb:/var/lib/mysql 将容器内mysql目录/var/lib/mysql挂在到宿主的/var/www/nextcloud/mysqldb目录。

mysql:5 使用mysql版本为5,因为nextcloud与mysql8直接运行有问题,调控难度大,暂时不用。
(2)查看mysql容器是否启动
docker ps –a
(3)进入mysql容器
docker exec -it nextcloud_db mysql -u nextcloud –pnextcloud
(4)创建数据库
CREATE DATABASE if not exists nextcloud;
exit;

2.4 启动Nextcloud容器

依次执行以下命令:
(1)开启NextCloud容器
		docker run --name=nextcloud --link nextcloud_db:nextcloud_db -p 80:80 -v /var/www/nextcloud/data:/var/www/html/data -d nextcloud

命令解释:
		--link nextcloud_db:nextcloud_db 连接名为nextcloud_db的容器作为数据库容器,分号后面的是该数据库容器在nextcloud容器中的别名。

		-p 80:80 是将外部80端口映射到docker容器的80端口上。

		-v 是将容器内的数据目录/var/www/html/data 挂载在宿主/var/www/nextcloud/data目录下

2.5 开始使用

登录http://ip:port/,需要选择Mysql,输入数据库地址为nextcloud_db。

3.数据备份及恢复

3.1 数据备份
(1)挂载的数据盘的备份
		将主机/var/www/nextcloud 文件定期打包,进行备份。
(2)mysql数据的备份
		docker exec -it nextcloud_db mysqldump -uroot -pnextcloud nextcloud > /var/www/nextcloud/bak.sql

将以上备份出的数据文件和sql文件放到备份机器上。

3.2 数据恢复

(1)挂载的数据盘的恢复
直接将打包的数据,拷贝到新建的docker的挂载目录下。
(2)mysql数据的恢复
		依次执行以下命令
		<1>拷贝备份的sql到容器内mysql的/temp 文件夹下
				docker cp ./bak1.sql nextcloud_db:/tmp/
		<2>进入docker的mysql
				docker exec -it nextcloud_db /bin/bash
		<3>登录mysql
				mysql -u nextcloud –pnextcloud
		<4>创建新的nextcloud数据库
				create database if not exists nextcloud;
		<5>使用数据库
				use nextcloud;
		<6>导入sql数据
				source /tmp/bak.sql 
		
以上操作完之后,登录网站即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值