nextcloud是一款收费的开源软件,很适宜在日常办公中作为文件共享平台来应用,作为技术小白的我,通过一个月的钻研,终于利用docker胜利搭建了nextcloud+onlyoffice,实现了文件共享并间接从web端进行文档编写的性能。上面简略形容一下我的装置过程,以及一些在装置过程中遇到的问题。一、因为首次尝试,我利用VMware装置了CentOS7版本的Linux零碎(网上曾经有很多成熟的装置过程,这里就不再赘述)。二、装置docker1、更新yum零碎包到最新版本#yum -y update2、执行docker装置脚本#curl -sSL https://get.docker.com/ | sh#yum install -y docker-selinux3、启动docker#systemctl start docker.service4、验证docker是否失常装置#docker run hello-world5、查看是否设置开机启动#systemctl list-unit-files | grep enable6、设置开机自启动#systemctl enable docker.service三、装置MySQL、nextcloud、onlyoffice1、拉取镜像:#docker pull mysql:latest#docker pull nextcloud#docker pull onlyoffice/documentserver依据网速等多方面起因,拉取镜像可能会很慢,需急躁期待。2、配置MySQL#docker run -p 3306:3306 --name mysql --restart="always" -v /usr/local/mysql/conf:/etc/mysql/conf.d -v /usr/local/mysql/logs:/logs -v /usr/local/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql***********04d8c735c3b6133fb3af83d321bc72*************# docker ps |grep mysql757******bbb4 mysql "docker-entrypoint.s…" 32 seconds ago Up 31 seconds 0.0.0.0:3306->3306/tcp, 33060/tcp fno_mysql# docker exec -it 757******bbb4 /bin/bashroot@75767208bbb4:/# mysql -uroot -pEnter password: Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 8Server version: 8.0.20 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> grant all PRIVILEGES on *.* to root@'%' WITH GRANT OPTION; #受权root登录Query OK, 0 rows affected (0.01 sec)#批改root账号的明码验证插件类型为mysql_native_password这是mysql8之后的问题:mysql> ALTER USER 'root'@'%' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER;Query OK, 0 rows affected (0.02 sec)mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';Query OK, 0 rows affected (0.01 sec)mysql> FLUSH PRIVILEGES;Query OK, 0 rows affected (0.01 sec)mysql> show databases;+--------------------+| Database |+--------------------+| information_schema || mysql || performance_schema || sys |+--------------------+4 rows in set (0.01 sec)42 mysql>备注:此处两次exit回车退出设置3、装置nextclouddocker run -d \-v /root/nextcloud/html:/var/www/html \-v /root/nextcloud/apps:/var/www/html/custom_apps \-v /root/nextcloud/config:/var/www/html/config \-v /root/nextcloud/nextcloud/data:/var/www/html/data \-v /root/nextcloud/themes:/var/www/html/themes \-p 8080:80 --name nextcloud --restart="always" nextcloud装置后肯定要查看防火墙是否曾经敞开,如防火墙处于开启状态,nextcloud则无奈登录MySQL数据库。敞开防火墙后再进行登录查看防火状态systemctl status firewalld临时敞开防火墙systemctl stop firewalld永恒敞开防火墙systemctl disable firewalld拜访http://装置主机ip:8080/ 页面
A: 创立管理员账号/明码;B: 配置数据库C: 点击装置实现;因要生成MySQL数据文件,需期待数分钟才会装置实现。此处如只是将nextcloud作为集体云存储平台,则可用SQLite登录,如需多人登录倡议应用MySQL/MariaDB登录。4、装置onlyofficedocker run -i -t -d -p 6060:80 --restart=always \-v /app/onlyoffice/DocumentServer/logs:/var/log/onlyoffice \-v /app/onlyoffice/DocumentServer/data:/var/www/onlyoffice/Data \-v /app/onlyoffice/DocumentServer/lib:/var/lib/onlyoffice \-v /app/onlyoffice/DocumentServer/db:/var/lib/postgresql --name onlyoffice --restart="always" onlyoffice/documentserver
拜访 http:// ip:6060,关上如下页面即装置胜利。
下载onlyoffice插件并配置nextcloud:因国外网址起因无奈间接下载onlyoffice插件,故将下载好的插件通过winscp装置到root/nextcloud/apps目录下。进入nextcloud页面,关上利用,在被禁用的利用里找到onlyoffice并启用,进入设置里对onlyoffice进行设置并保留,如下图:四、 填坑记。将onlyoffice插件下载并通过winscp装置到root/nextcloud/apps目录下后,你会发现已装置的利用里依然没有onlyoffice,故需进行以下操作:这是18年当前的NextCloud版本呈现的bug, 解决办法是在config.php配置文件中增加配置
'allow_local_remote_servers' => true,
具体操作过程如下:用cat config.php查看配置文件用vi config.php更改配置文件,退出
'allow_local_remote_servers' => true,
输出i进行编辑,插入后按ESC键退出并输出:wq退出编辑。应用cd ..命令退出配置
五、装置过程中可能会用到的相干命令:docker ps 查看容器是否已启动docker rm 容器名 删除容器docker stop 容器名 进行Ip addr 查看IP地址docker启动命令,docker重启命令,docker敞开命令systemctl start docker 启动sudo systemctl daemon-reload 守护过程重启systemctl restart docker 重启docker服务service docker stop 敞开dockersystemctl stop docker 敞开docker六、相干参考网址https://www.cnblogs.com/cooper-73/p/13083161.html