共计 3907 个字符,预计需要花费 10 分钟才能阅读完成。
nextcloud 是一款收费的开源软件,很适宜在日常办公中作为文件共享平台来应用,作为技术小白的我,通过一个月的钻研,终于利用 docker 胜利搭建了 nextcloud+onlyoffice, 实现了文件共享并间接从 web 端进行文档编写的性能。上面简略形容一下我的装置过程,以及一些在装置过程中遇到的问题。一、因为首次尝试,我利用 VMware 装置了 CentOS7 版本的 Linux 零碎(网上曾经有很多成熟的装置过程,这里就不再赘述)。二、装置 docker | |
1、更新 yum 零碎包到最新版本 | |
#yum -y update | |
2、执行 docker 装置脚本 | |
#curl -sSL https://get.docker.com/ | sh | |
#yum install -y docker-selinux | |
3、启动 docker | |
#systemctl start docker.service | |
4、验证 docker 是否失常装置 | |
#docker run hello-world | |
5、查看是否设置开机启动 | |
#systemctl list-unit-files | grep enable | |
6、设置开机自启动 | |
#systemctl enable docker.service | |
三、装置 MySQL、nextcloud、onlyoffice | |
1、拉取镜像:#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 mysql | |
757******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/bash | |
root@75767208bbb4:/# mysql -uroot -p | |
Enter password: | |
Welcome to the MySQL monitor. Commands end with ; or \g. | |
Your MySQL connection id is 8 | |
Server version: 8.0.20 MySQL Community Server - GPL | |
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved. | |
Oracle is a registered trademark of Oracle Corporation and/or its | |
affiliates. Other names may be trademarks of their respective | |
owners. | |
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、装置 nextcloud | |
docker 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、装置 onlyoffice | |
docker 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 敞开 docker | |
systemctl stop docker 敞开 docker | |
六、相干参考网址 | |
https://www.cnblogs.com/cooper-73/p/13083161.html | |
正文完