第一部分:安装配置 nextcloud
准备
(1)启动一个 KVM 虚拟机,见下图。该虚拟机为 anlisos8…0.2
虚拟机的 ssh、hostname 、IP地址都已配置好。
(2)宝塔面板也已安装好docker
一、环境
docker版本:29.0.4 Docker Compose 版本: 2.27.0
mariadb-docker版本:10.6.17 redis-docker版本:6.2.7
二、拉取镜像
docker pull nextcloud:29.0.4-apache
docker pull mariadb:10.6.17
docker pull redis:6.2.7-bullseye
三、创建目录用于保存 nextcloud 配置及文件的目录
# mkdir -p /www/docker_v
[root@client ~]# cd /www/docker_v
[root@client docker_v]#
[root@client docker_v]# mkdir -p nextcloud
切换到/nextcloud/文件夹下创建docker-compose.yaml
[root@client docker_v]# cd nextcloud
[root@client nextcloud]#vim docker-compose.yaml
如果没有 vim 可以使用命令 dnf install vim 安装一下。
四、docker-compose.yaml 文件的内容如下:
version: '3'
volumes:
# apache数据卷
nextcloud-data:
# 数据库数据卷
nextcloud-db:
# redis数据卷
nextcloud-redis:
services:
nextcloud-mysql:
image: mariadb:10.6.17
container_name: nextcloud-mysql
volumes:
- /www/docker_v/nextcloud/nextcloud-db:/var/lib/mysql
- /etc/localtime:/etc/localtime
restart: always
command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --character-set-server=utf8 --collation-server=utf8_bin
environment:
# root密码
- MYSQL_ROOT_PASSWORD=root@nextcloud
# 新建数据库
- MYSQL_DATABASE=nextcloud
# 新建用户
- MYSQL_USER=nextcloud
# 新用户密码
- MYSQL_PASSWORD=admin@nextcloud
- TZ=Asia/Shanghai
- LANG=en_US.UTF-8
ports:
- "3306:3306"
networks:
nextcloud-net:
nextcloud-redis:
image: redis:6.2.7-bullseye
container_name: nextcloud-redis
volumes:
- ./redis.conf:/usr/local/etc/redis/redis.conf
- /etc/localtime:/etc/localtime
- /www/docker_v/nextcloud/nextcloud-redis:/data
restart: always
networks:
nextcloud-net:
nextcloud-apache:
image: nextcloud:29.0.4-apache
container_name: nextcloud-apache
volumes:
- /etc/localtime:/etc/localtime
- /www/docker_v/nextcloud/nextcloud-data:/var/www/html
restart: always
environment:
# 数据库地址
- MYSQL_HOST=nextcloud-mysql
# 数据库名
- MYSQL_DATABASE=nextcloud
# 数据库用户
- MYSQL_USER=nextcloud
# 数据库密码
- MYSQL_PASSWORD=admin@nextcloud
# Redis地址
- REDIS_HOST=nextcloud-redis
# Redis端口
- REDIS_HOST_PORT=6379
# Redis密码
#- REDIS_HOST_PASSWORD=
# PHP脚本最大内存
- PHP_MEMORY_LIMIT=512M
# PHP文件上传限制
- PHP_UPLOAD_LIMIT=2048M
ports:
- "8080:80"
networks:
nextcloud-net:
links:
- nextcloud-mysql
- nextcloud-redis
networks:
nextcloud-net:
driver: bridge
ipam:
config:
# 配置容器网段
- subnet: 172.18.0.0/16
gateway: 172.18.0.1
此处端口映射为8080,需要修改端口映射可以将上面的ports:8080修改为其他端口。
五、启动配置
六、浏览器输入http://ip:8080 访问nextcloud
首次进入Nextcloud需要创建管理员账号及密码,密码上文有。
第二部分:安装onlyoffice服务及调试
一、在宝塔面板中安装 onlyoffice v1.0.1 ,如下图
二、在 onlyoffice v1.0.1 安装并拉取镜像
这一步因为 onlyoffice/documentserver 镜像太大,拉取困难,要先行拉取。
docker下载onlyoffice镜像
# docker pull onlyoffice/documentserver
三、查看 onlyoffice v1.0.1 的参数
四、浏览地址
请使用浏览器访问如下地址:http://你的IP地址:18760
五、配置nextcloud连接onlyoffice
5.1 登录以下网址下载连接器: https://apps.nextcloud.com/apps/onlyoffice
此处安装的nextcloud版本是29.0.4,对应onlyoffice连接器是9.5.0
5.2 下载后上传压缩包onlyoffice.tar.gz到目录/nextcloud/app/apps
5.3 打开Nextcloud-应用,在“已禁用的应用”处可以看到新的onlyoffice连接器,点击“启用”
5.4 按下图进行链接配置
配置成功见下图
以上就是利用宝塔搭建 Nextcloud + onlyoffice 方法 ,写的如有不尽如人意之处,敬请斧正。