docker在线搭建nextcloud与onlyoffice

1. 离线安装docker

参考:离线安装docker 26.1.3

2. Docker-compose安装nextcloud

Compose 简介
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

Compose 使用的三个步骤:

  • 使用 Dockerfile 定义应用程序的环境。
  • 使用 docker-compose.yml 定义构成应用程序的服务,这样它们可以在隔离环境中一起运行。
  • 最后,执行 docker-compose up 命令来启动并运行整个应用程序。

2.1. 下载可执行文件docker-compose

文件名:docker-compose-linux-x86_64
下载链接:https://github.com/docker/compose/releases/tag/v2.5.0

2.2. 上传文件至服务器的/usr/local/bin/文件夹,并将文件改名为docker-compose

[root@localhost bin]# ls -l /usr/local/bin/
-rwxr-xr-x 1 root root 26525696 Jun  9 20:08 docker-compose

添加运行权限

chmod +x /usr/local/bin/docker-compose

验证docker-compose命令

[root@localhost bin]# docker-compose -v
Docker Compose version v2.5.0

3. Nextcloud的docker-compose部署方法

3.1 创建用于保存nextcloud配置和文件的目录

mkdir -p /nextcloud/nginx # 存放nginx配置
mkdir -p /nextcloud/db # 存放数据库文件
mkdir -p /nextcloud/app # 存放nextcloud程序包,以后出现问题了可以修改里面的php配置文件

切换到/nextcloud/文件夹下创建docker-compose.yaml

cd /nextcloud/
nano docker-compose.yaml

输入以下内容

version: '2'

#volumes:
  #nextcloud:
  #db:

services:
  db:
    image: mariadb:10.5
    restart: always
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW
    networks:
      - nextcloud_netbridge
    volumes:
      - /nextcloud/db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=123456
      - MYSQL_PASSWORD=nextcloud
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud

  app:
    image: nextcloud
    restart: always
    ports:
      - 8080:80
    networks:
      - nextcloud_netbridge
    links:
      - db
    volumes:
      - /nextcloud/app:/var/www/html
    environment:
      - MYSQL_PASSWORD=nextcloud
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud
      - MYSQL_HOST=db

networks:
  nextcloud_netbridge:
    driver: bridge

此处端口映射为8080,需要修改端口映射可以将上面的ports-8080修改为其他

3.2 启动集成配置

docker-compose -f /nextcloud/docker-compose.yaml up -d

浏览器输入http://ip:8080 访问nextcloud

首次进入Nextcloud需要创建管理员账号及密码

3.3 检查docker ps

[root@localhost bin]# docker ps
CONTAINER ID   IMAGE                       COMMAND                  CREATED             STATUS             PORTS                                            NAMES
300be5d45332   nextcloud                   "/entrypoint.sh apac…"   About an hour ago   Up About an hour   0.0.0.0:8080->80/tcp, :::8080->80/tcp            nextcloud-app-1
2621cf24e786   mariadb:10.5                "docker-entrypoint.s…"   About an hour ago   Up About an hour   3306/tcp                                         nextcloud-db-1

4. 安装onlyoffice服务及调试

4.1 docker下载onlyoffice镜像

docker pull onlyoffice/documentserver

4.2 docker安装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

4.3 检查docker ps,可见容器onlyoffice/documentserver,ID为65bc4910764a

[root@localhost bin]# docker ps
CONTAINER ID   IMAGE                       COMMAND                  CREATED             STATUS             PORTS                                            NAMES
300be5d45332   nextcloud                   "/entrypoint.sh apac…"   About an hour ago   Up About an hour   0.0.0.0:8080->80/tcp, :::8080->80/tcp            nextcloud-app-1
2621cf24e786   mariadb:10.5                "docker-entrypoint.s…"   About an hour ago   Up About an hour   3306/tcp                                         nextcloud-db-1
65bc4910764a   onlyoffice/documentserver   "/app/ds/run-documen…"   About an hour ago   Up About an hour   443/tcp, 0.0.0.0:6060->80/tcp, :::6060->80/tcp   onlyoffice

4.4 启动之后登录 ip:6060,等待五分钟后可以正常访问页面

ip:6060.PNG

5. 配置nextcloud连接onlyoffice

5.1 登录以下网址下载连接器:https://apps.nextcloud.com/apps/onlyoffice

onlyoffice连接器.PNG

此处安装的nextcloud版本是23.0.0,对应onlyoffice连接器是7.4.8

7.4.8.PNG

5.2 上传压缩包onlyoffice.tar.gz到目录/nextcloud/app/apps

解压缩:

tar -zvxf onlyoffice.tar.gz

修改权限

chown -R root:root onlyoffice

5.3 打开Nextcloud-应用,在“已禁用的应用”处可以看到新的onlyoffice连接器,点击“启用”

启用.PNG

5.4 打开“设置”菜单-“ONLYOFFICE”,输入ONLYOFFICE Docs地址为 ip:6060

设置.PNG

5.5 测试,已经可以打开文件中的office文件,共享后可以实现协同编辑

done.PNG

参考资料:Docker部署Nextcloud及其使用方法
参考资料:docker搭建nextcloud与onlyoffice(最详细)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。