【问题标题】:Issue with Collabora CODE, Nextcloud & Nginx using docker-compose使用 docker-compose 的 Collabora CODE、Nextcloud 和 Nginx 问题
【发布时间】:2021-12-28 21:55:45
【问题描述】:

我正在尝试获取docker-compose.yaml 一起通过 Nginx 代理管理器运行 Nextcloud 和 Collabora CODE。

到目前为止,我的 Nginx 和 Nextcloud 在持久卷上工作得非常好,因此我的配置在 killrm 中仍然存在。我的问题是我无法让我的 Collabora CODE 实例链接到 Nextcloud。有很多地方我可能弄错了,所以我会在这里转储尽可能多的信息。

我有以下子域都指向我的服务器:

collabora.domain.tldnextcloud.domain.tldnginx.domain.tld

... 并设置为代理主机:

正如我所提到的,Nginx 和 Nextcloud 设置非常棒。当我将浏览器指向collabora.domain.tld 时,我看到了OK 消息。我也可以通过collabora.domain.tld/loleaflet/dist/admin/admin.html访问管理页面

collabora.domain.tld 的 NPM 条目如下:

我的 docker-compose.yaml 经历了几次迭代,试图让它工作,但我目前的尝试如下:

version: '3'

volumes:
  nextcloud-data:
  nextcloud-db:
  npm-data:
  npm-ssl:
  npm-db:

networks:
  frontend:
  backend:

services:
  code:
    image: collabora/code:latest
    restart: always
    environment:
      - password=${COLLABORA_PASSWORD:?Not defined!}
      - username=${COLLABORA_USERNAME:?Not defined!}
      - domain=${COLLABORA_DOMAIN:?Not defined!}
    expose:
      - "9980"
    networks:
      - frontend
      - backend

  nextcloud-app:
    image: nextcloud:stable
    restart: always
    volumes:
      - nextcloud-data:/var/www/html
    environment:
      - MYSQL_PASSWORD=${NC_MYSQL_PASSWORD:?Not defined!}
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud-user
      - MYSQL_HOST=nextcloud-db
    networks:
      - frontend
      - backend

  nextcloud-db:
    image: mariadb
    restart: always
    command: --transaction-isolation=READ-COMMITTED --binlog-format=ROW --innodb-file-per-table=1 --skip-innodb-read-only-compressed
    volumes:
      - nextcloud-db:/var/lib/mysql
    environment:
      - MYSQL_ROOT_PASSWORD=${NC_MYSQL_ROOT_PASSWORD:?Not defined!}
      - MYSQL_PASSWORD=${NC_MYSQL_PASSWORD:?Not defined!}
      - MYSQL_DATABASE=nextcloud
      - MYSQL_USER=nextcloud-user
    networks:
      - backend

npm-app:
    image: jc21/nginx-proxy-manager:latest
    restart: always
    ports:
      - "80:80"
      - "81:81"
      - "443:443"
    environment:
      - DB_MYSQL_HOST=npm-db
      - DB_MYSQL_PORT=3306
      - DB_MYSQL_USER=npm-user
      - DB_MYSQL_PASSWORD=${NPM_MYSQL_PASSWORD:?Not defined!}
      - DB_MYSQL_NAME=npm
    volumes:
      - npm-data:/data
      - npm-ssl:/etc/letsencrypt
    networks:
      - frontend
      - backend

  npm-db:
    image: jc21/mariadb-aria:latest
    restart: always
    environment:
      - MYSQL_ROOT_PASSWORD=${NPM_MYSQL_ROOT_PASSWORD:?Not defined!}
      - MYSQL_DATABASE=npm
      - MYSQL_USER=npm-user
      - MYSQL_PASSWORD=${NPM_MYSQL_PASSWORD:?Not defined!}
    volumes:
      - npm-db:/var/lib/mysql
    networks:
      - backend

$COLLABORA_DOMAIN 设置为 nextcloud.domain.tld

任何想法我做错了什么,以及如何让我的 Nextcloud 连接到 CODE?

【问题讨论】:

    标签: docker nginx docker-compose nextcloud


    【解决方案1】:

    您的自定义位置是什么样的?见,例如https://www.collaboraoffice.com/code/nginx-reverse-proxy/

    我有一个非常相似的设置,除了 collabora 实例不在 docker compose 中,因为这对我没有用。

    确保您已正确指定域环境变量(点转义等)

    【讨论】:

      猜你喜欢
      • 2021-05-30
      • 2023-03-17
      • 2022-10-09
      • 2020-04-04
      • 2018-05-09
      • 2023-04-05
      • 2022-01-09
      • 2021-01-07
      • 2020-06-07
      相关资源
      最近更新 更多