使用OwnCloud搭建自己的网盘

最近在自己的服务器上建了一个OwnCloud的网盘。

服务器版本为Ubuntu Server 18.10,在创建OwnCloud服务时,因不想污染服务器的环境,用到了Docker,在Docker中安装OwnCloud。

 

整套系统需要3个Docker,分别用于安装OwnCloudServer、OnlyOffice Server和Nginx。

Nginx用作反向代理,当访问OwnCloud Server和OnlyOffice Server的域名时,分别指向各自对应的Docker。OwnCloud Server是网盘服务器,而OnlyOffice Server用来配合OwnCloud Server,在线显示文档,支持的格式包括word、excel、ppt、epub等。

 

1.    安装Docker

UbuntuServer自身不带Docker,需要安装。运行命令

sudo apt install docker.io

安装后运行一下命令检查是否安装成功。

docker --version

 

2.    安装ownCloudServer

1)    先在当前目录创建目录ownCloud。

mkdir ownCloud

 

2)    接着到docker的官网查找ownCloud Server的Docker。

https://hub.docker.com/r/owncloud/server/

运行如下命令下载docker到本地,我使用的版本是10.0。

sudo docker pull owncloud/server:10.0

 

3)    然后运行OwnClouder Server的docker。

sudo docker run -d --name ownCloud -p 8081:8080 --rmowncloud/server:10.0

ownCloud默认的端口是8080,把它映射成宿主机(即Ubuntu服务器)的端口8081,使用参数 -p 8081:8080 ,首次运行时,我的目的只是把它的目录 /mnt/data/中的文件复制到宿主机,所以使用了--rm参数,意味着一旦停止运行ownCloud,它会自动销毁。

浏览器输入http://<ip>:8081,可以打开网页,证明ownCloud正常运行。

 

4)    之后把  /mnt/data/中的文件复制到宿主机的 ~/ownCloud 目录,停止容器ownCloud

cd ownCloud

sudo docker cp ownCloud:/mnt/data/ ./

sudo docker stop ownCloud

此时可看到目录 ~/ownCloud/data(在我的环境中,绝对路径是 /home/ubuntu/ownCloud/data)中的有若干文件夹,即ownCloud的个人数据。

 

5)    重新启动 ownCloud

sudo docker run -d --name ownCloud -p 8081:8080 -v/home/ubuntu/ownCloud/data:/mnt/data owncloud/server:10.0

这次运行时,参数稍有不同,去掉了 --rm,这样以后把 ownCloud停止了,可以再次start,数据不会丢失。加上了参数-v /home/ubuntu/ownCloud/data:/mnt/data,把宿主机的目录/home/ubuntu/ownCloud/data映射到宿主机的目录 /mnt/data

 

6) 浏览器中登录ownCloud,修改相关设置。

浏览器中打开 http://<ip>:8081,输入默认用户名/密码:admin/admin 登录,修改密码、语言。

进入Market,安装Apps。安装Text Editor、PDF Viewer、Gallery、Onlyoffice,此时可以查看txt文件、图片、PDF,但word、ppt、excel无法查看,即OnlyOffice没法使用。

Google之后,原来还需要安装OnlyOffic服务器。

 

3.  安装OnlyOffice Server

1)    到 /apps目录中查看是否已经安装onlyOffice 插件。

在我的环境中已经安装,如果没有安装,可参见文档https://github.com/ONLYOFFICE/onlyoffice-owncloud

打开页面http://<ip>/settings/admin?sectionid=additional,这是OnlyOffice的设置,我们先不设置。

 

2)  下载OnlyOffice Server的docker镜像,运行它。

sudo docker run -i -t -d --name onlyofficeServer -p 8082:80onlyoffice/documentserver

打开浏览器  http://<ip>:8082 , 验证服务器已经在运行。

设置 http://<documentServer>,为 http://<ip>:8082,保存。

 

浏览器中打开 http://<ip>:8081登录,点击odt、epub文件,可以在线查看。新建word文档,可以编辑。

说明OnlyOffice已经安装成功,此时ownCloud已经可以运行了。不过有点美中不足,只能IP访问。稍后的步骤把域名绑定到相应IP,通过nginx反向代理访问OwnCloud。

 

4.        配置域名解析和Nginx

首先要有个域名,在域名解析里面,配置记录类型A,把域名指向<ip>

域名解析成功之后,等一段时间,就可以通过http://<domain>:8081,可以访问OwnCloud了。为了去掉端口(即输入http://<domain>)也能访问,我们需要做些配置。

1) 配置Nginx。

sudo docker run -d -p 80:80 --rm --namemynginx nginx

创建目录 nginx_files/conf, 然后把nginx中的目录复制到里面。

sudo docker container cp mynginx:/etc/nginx .

然后停止它。

sudo docker container stop mynginx

再次运行。

sudo docker run -d -p 80:80 -p 443:443 -v/home/ubuntu/nginx_files/conf/:/etc/nginx --name mynginx nginx

 

2)   修改nginx.conf文件、复制证书,重新加载nginx。

修改的步骤可以参见文档Nginx 容器教程(http://www.ruanyifeng.com/blog/2018/02/nginx-docker.html),不再赘述。

service nginx reload

 

OK, 此时http、https均工作。

 

3)  http强制跳转到https。

可以参见这篇文档 nginx强制使用https访问(https://blog.csdn.net/wzy_1988/article/details/8549290)。

 

稍加说明:在ownCloud强制使用https之后,在步骤3.2中的OnlyOffice Server也应强制改成https访问,否则仍旧无法使用。

 

至此,大功告成。附上2张截图。 

https://i-blog.csdnimg.cn/blog_migrate/787e8bf01c50b36e176d5b9800a7527a.jpeg

登录界面

 

https://i-blog.csdnimg.cn/blog_migrate/4c678ecddf7b292b068b42d1760fbe93.jpeg

ownCloud主界面

 

参考文档

  • https://hub.docker.com/r/owncloud/server/
  • https://github.com/owncloud-docker/server
  • https://github.com/ONLYOFFICE/onlyoffice-owncloud
  • https://github.com/ONLYOFFICE/Docker-DocumentServer
  • http://www.ruanyifeng.com/blog/2018/02/nginx-docker.html
  • https://blog.csdn.net/wzy_1988/article/details/8549290

 

相关文章

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值