《Linux运维总结:Centos7.6使用docker部署owncloud》



一、部署背景

需求如下:
1、安全可靠的数据存储中心。
2、支持在线编辑文档,如txt、word、execl、ppt等格式文件。
3、根据部门或人员维度设置数据独立空间。
4、账号权限添加、修改、回收管理方便。
5、账号密码添加、修改、删除管理方便。
6、支持web平台管理。


二、部署方案

1、服务器:使用的是公司内网服务器。
2、文件存储:由于公司内部文件非常大,所以对磁盘容量及性能要求比较高,这里采用的是大容量的固态磁盘。
3、网络类型:由于是企业内部是使用,所以使用内网环境。
4、部署方式:采用docker容器化部署。


三、环境准备

1、操作系统:CentOS Linux release 7.6.1810 (Core)
2、内核版本:3.10.0-1160.15.2.el7.x86_64
3、docker版本:18.09.7


四、部署步骤

官方参考链接:Manual Installation on Linux

4.1、部署mariadb服务

#1、yum安装mariadb服务
yum install mariadb-server mariadb -y

#2、启动mariadb服务
systemctl start mariadb

#3、修改root密码(默认是无密码)
update mysql.user set password=password('VU8YO84X1vE@0SdA') where user='root' and host='localhost';
flush privileges;

#4、创建用于owncloud连接的cloud数据库、用户、密码、权限
create database cloud;
CREATE USER 'cloud'@'%' IDENTIFIED BY 'HhN$roPvuLR1o09c';
GRANT ALL PRIVILEGES ON cloud.* TO 'cloud'@'%';
FLUSH PRIVILEGES;

#5、mariadb配置优化
cd /etc/my.cnf.d && touch 50-server.cnf
vim 50-server.cnf
#内容如下
key_buffer_size         = 32M
table_cache             = 400
query_cache_size        = 128M
innodb_flush_method=O_DIRECT
innodb_flush_log_at_trx_commit=1
innodb_log_file_size=256M
innodb_log_buffer_size = 128M
innodb_buffer_pool_size=2048M
innodb_buffer_pool_instances=3
innodb_read_io_threads=4
innodb_write_io_threads=4
innodb_io_capacity = 500
innodb_thread_concurrency=2
innodb_file_format=Barracuda
innodb_file_per_table=ON
innodb_large_prefix=1
character-set-server=utf8mb4
collation-server=utf8mb4_general_ci

#6、重启mariadb服务
systemctl restart mariadb

4.2、部署redis服务

1、官网参考地址:为什么需要安装缓存数据库?
默认情况下,使用数据库锁定后端启用文件锁定。这给您的数据库带来了很大的负担。使用 memcache.locking可减轻数据库负载并提高性能。拥有大量工作负载的ownCloud服务器的管理员应安装内存缓存。

2、支持的缓存后端
ownCloud支持的缓存后端是:
本地缓存APCu:这是运行PHP 5.6及更高版本的系统的本地缓存。需要APCu 4.0.6及更高版本。另外,您可以使用Zend OPCache。但是,它不是数据缓存,而只是操作码缓存。
分布式缓存Redis:这是用于多服务器ownCloud安装的分布式缓存。需要版本2.2.6或更高版本的PHP Redis扩展。
分布式缓存Memcached:这是用于多服务器ownCloud安装的分布式缓存。

您可以同时使用本地和分布式缓存。推荐的ownCloud缓存为APCu和Redis。如果您未安装并启用本地内存缓存,则您将在ownCloud管理页面上看到警告。如果仅在config.php(memcache.distributed)中启用分布式缓存,而在本地缓存(memcache.local)中未启用,则仍会看到缓存警告。

3、部署参考地址:redis数据库部署

#1、没有php72执行以下命令扩展yum库
yum install epel-release
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

#2、安装redis扩展库
yum install php72w-pecl-redis -y

#3、安装redis
yum  install redis -y

#4、修改配置文件
vim /etc/redis.conf
bind 0.0.0.0
requirepass UmUC*fm7&#Y0xGhb

#5、重启redis服务
systemctl enable redis
systemctl restart redis
systemctl status redis

4.3、安装owncloud服务

官网参考地址:使用docekr部署owncloud服务

 docker pull owncloud
 docker run -d --name owncloud -v /data/ownclouddata:/var/www/html -p 8080:80 owncloud

OwnCloud安装向导:
1、本地浏览器访问:http://172.18.1.110::8080
2、系统首先要求设置一个管理员账号,请设置好并牢记之,然后点击"配置数据库"
如下图所示:
在这里插入图片描述
安装完成后如下图所示:
在这里插入图片描述


4.4、配置内存缓存

官方参考地址:内存缓存配置

#修改config.php文件
vim /data/ownclouddata/config/config.php
  'filelocking.enabled' => true,
  'memcache.locking' => '\OC\Memcache\Redis',
  'redis' => [
     'host' => '172.18.1.110',
     'port' => 6379,
     'timeout' => 0.0,
     'password' => 'UmUC*fm7&#Y0xGhb',
  ],
#说明:修改后可以不用重启owncloud服务。

完整配置文件如下图所示:
在这里插入图片描述


4.5、OwnCloud实现文件在线预览和编辑

官方参考地址:使用docker部署onlyoffice/documentserver

1、安装并启用 onlyoffice/documentserver

docker pull onlyoffice/documentserver
docker run -i -t -d -p 8899:80 \
    -v /data/onlyoffice/documentServer/data:/var/www/onlyoffice/Data  onlyoffice/documentserver	

2、登录到ownCloud,单击左上角进入Market页面
在这里插入图片描述
3、找到 ONLYOFFICE 插件,点击安装
在这里插入图片描述
4、安装完成后,点击右上角用户名进入到设置页面,进行如图所示的设置
在这里插入图片描述
特别说明:
a、这里选择关闭证书校验,如果需要安装,请参考官方文档。
b、请根据实际的需求填写默认关联的文件格式以及默认文件编辑器。

5、返回到首页,刷新或重新登录,然后单击 Office 文件即可在线预览和编辑
在这里插入图片描述
说明:点击文件—>高级设置—>关闭拼写检查。


4.6、OwnCloud实现邮件发送

OwnCloud支持第三方的SMTP发送邮件模式,具体如下:
1、登录OwnCloud后,进入管理用户->设置->个人->常规页面,填写发件邮箱地址
在这里插入图片描述
2、进入设置->管理->常规页面,依次填写SMTP
在这里插入图片描述
设置完成后,测试邮件发送,如果现实发送成功,则表明设置正确。


五、平台操作

5.1、创建普通用户

说明:这里就不截图显示了,应该很简单,但是有几点需要注意。
1、根据公司部门结构,设置不同的组。
2、根据不同的组,创建相应的用户。

5.2、用户密码修改

修改密码这里有个小坑,之前一直以为密码修改不成功,是因为没有按回车键。

5.3、用户组删除

删除组不会立即删除,需要等待几分钟(这个需要注意)。

5.4、owncloud升级

OwnCloud提供了非常人性化的升级(update)入口,根据系统的更新提示既可以完成主版本、APP插件的更新。
特别注意:在升级之前请做好服务器的快照备份,这个是必须的步骤,因为谁都无法保证升级100%成功。


插件升级
1、登录OwnCloud之后查看右上角是否有更新通知,若有,请点击其中的更新条目
在这里插入图片描述

2、点击更新条目后,进入更新界面
在这里插入图片描述

3、点击“更新”按钮,系统进入“UPDATING”,耐心等待更新。

4、更新完成后,更新清单会显示“所有应用都是最新的”。


主程序升级
1、当有可用升级的程序时,系统提示“ownCloud *** is available. Get more information on how to update”

2、依次打开:点击右上角用户->设置->常规,找到更新管理器,若有更新请点击“打开更新管理器”按钮
在这里插入图片描述
3、点击“Create a checkpoint”,创建一个核心文件备份

3、进入Updater(更新管理器)
点击“Start”按钮,系统进入自动化升级过程,下载和升级过程比较长,请耐心等待
在这里插入图片描述
说明:由于升级过程会下载最新版本,OwnCloud的下载服务器在国外,若下载不成功,需要不定期尝试。


5.4、owncloud备份

说明:这里的备份分为两部分,一部分为mysql数据库cloud库,一部分为用户上传的文件数据

1、mysql数据库备份建议写一个数据库备份脚本定时备份。
2、由于owncloud采用的是容器化部署,且/var/www/html目录有做本地映射,当前本地映射的目录为/data/ownclouddata,进入该目录下会有一个data目录里面存储各个用户的数据的目录,建议如果资源足够的情况下做多机备份,采用rsync脚本或其他方式定时备份到其他主机上,实时保证公司企业内部重要数据的安全。


5.5、本地磁盘映射

实现方案:利用owncloud提供的WEBDAV服务,我们可直接把这个owncloud映射出本地磁盘驱动器,方便随时存储和查看文件。
1、修改注册表使得WIN同时支持http和https
说明:当前部署的owncloud不能使用https,只能使用http,且当前环境的系统是win7以上版本,包括win8、win10,会稍微麻烦一些,win7以上版本操作系统微软禁用了http形式的webdav验证形式,所以我们必须修改注册表来实现。

#操作步骤如下
1、打开cmd,输入regedit
2、计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\WebClient\Parameters
   把BasicAuthLevel 值改成2,即同时支持http和https,默认只支持https

如下图所示:
在这里插入图片描述

2、启动WebClient服务
点击我的电脑—>右键点击管理—>点击服务和应用程序—>点击服务—>找到WebClient—>右键启动服务
在这里插入图片描述

3、查看owncloud的webdav地址
在这里插入图片描述
4、点击我的电脑,邮件选择网络映射驱动器
说明:填入webdav地址之后,调整盘符,点击完成,在弹出的方框内输出账号和密码即可。
在这里插入图片描述


六、部署总结

1、上述部署文档适用于内网服务器。
2、如果是在云虚拟机上部署,如华为云、阿里云或腾讯云这种,建议使用oss,不建议使用SFS或NAS。

#使用华为云 OSS
参考由华为云官方提供的教程:https://bbs.huaweicloud.com/forum/thread-1001-1-1.html

#使用腾讯云 OSS
参考由腾讯云官方提供的教程:https://cloud.tencent.com/document/product/436/6883

#使用阿里云 OSS
参考由阿里云官方提供的教程:https://help.aliyun.com/document_detail/32196.html

总结:整理不易,如果对你有帮助,可否点赞关注一下?

更多详细内容请参考:Linux运维实战总结
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

东城绝神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值