NCP + Collabora CODE + Traefik v2 problem

Hi!
I have installed the collabora CODE arm64 from Nextcloud application.
Unfortunately the collabora app cannot connect to it.
I think this is due to a missing configuration of traefik in my docker-compose file but I didn’t found how to do it .
Here is my original docker-compose.yml:

version: '3'
services:
  nextcloudpi:
    image: ownyourbits/nextcloudpi-arm64
    command: "192.168.1.17"
    ports:
      - "886:443"
      - "4443:4443"

    logging:
      driver: "json-file"
      options:
        max-size: "100m"
        max-file: "5"
        labels: "production_status"
        env: "os,customer"

    labels:
     - "traefik.enable=true"
     - "traefik.protocol=http"
     - "traefik.port=80"
     - "traefik.http.routers.nextcloudpi.entrypoints=web"
     - "traefik.http.routers.nextcloudpi.rule=Host(`ncp.exemple.org`)"
     - "traefik.http.middlewares.https-redirect.redirectscheme.scheme=https"
     - "traefik.http.routers.nextcloudpi.middlewares=https-redirect"
     - "traefik.http.routers.nextcloudpi-secure.entrypoints=websecure"
     - "traefik.http.routers.nextcloudpi-secure.rule=Host(`ncp.exemple.org`)"
     - "traefik.http.middlewares.nc-rep.redirectregex.regex=https://(.*)/.well-known/(card|cal)dav"
     - "traefik.http.middlewares.nc-rep.redirectregex.replacement=https://$$1/remote.php/dav/"
     - "traefik.http.middlewares.nc-rep.redirectregex.permanent=true"
     - "traefik.http.middlewares.nc-header.headers.customFrameOptionsValue=SAMEORIGIN"
     - "traefik.http.middlewares.nextcloudpi.headers.stsSeconds=155520011"
     - "traefik.http.middlewares.nextcloudpi.headers.stsIncludeSubdomains=true"
     - "traefik.http.middlewares.nextcloudpi.headers.stsPreload=true"
     - "traefik.http.routers.nextcloudpi-secure.middlewares=nc-rep,nc-header"
     - "traefik.http.routers.nextcloudpi-secure.tls=true"
     - "traefik.http.routers.nextcloudpi-secure.tls.certresolver=myresolver"
     - "traefik.http.routers.nextcloudpi-secure.service=nextcloudpi"
     - "traefik.http.services.nextcloudpi.loadbalancer.server.port=80"
     - "traefik.docker.network=traefik"

    environment:
     - TRUSTED_PROXIES="traefik" 


    networks:
      - traefik
      - backend

    volumes:
     - ncdata:/data
     - /etc/localtime:/etc/localtime:ro
     - /media:/media
     - /media/nfsnas:/mnt/nfsnas
    container_name: nextcloudpi
    restart: always

volumes:
  ncdata:

networks:
  traefik: # this is the network provided by traefik
    external:
      name: traefik
  backend: # your database should be in this network   
      driver: bridge

Can someone help me to solve this?

Here is my nextcloud.log:

{
  "reqId": "X8th-tNSKrwbkAsw4oaOhwAAABg",
  "level": 3,
  "time": "2020-12-05T11:33:35+01:00",
  "remoteAddr": "XX.XX.XXX.XXX",
  "user": "nextcloud",
  "app": "index",
  "method": "POST",
  "url": "/index.php/apps/richdocuments/ajax/admin.php",
  "message": {
    "Exception": "Exception",
    "Message": "Call to a member function xpath() on bool",
    "Code": 0,
    "Trace": [
      {
        "file": "/data/nextcloud/lib/private/AppFramework/App.php",
        "line": 137,
        "function": "dispatch",
        "class": "OC\\AppFramework\\Http\\Dispatcher",
        "type": "->",
        "args": [
          {
            "__class__": "OCA\\Richdocuments\\Controller\\SettingsController"
          },
          "setSettings"
        ]
      },
      {
        "file": "/data/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php",
        "line": 47,
        "function": "main",
        "class": "OC\\AppFramework\\App",
        "type": "::",
        "args": [
          "OCA\\Richdocuments\\Controller\\SettingsController",
          "setSettings",
          {
            "__class__": "OC\\AppFramework\\DependencyInjection\\DIContainer"
          },
          {
            "_route": "richdocuments.settings.setSettings"
          }
        ]
      },
      {
        "function": "__invoke",
        "class": "OC\\AppFramework\\Routing\\RouteActionHandler",
        "type": "->",
        "args": [
          {
            "_route": "richdocuments.settings.setSettings"
          }
        ]
      },
      {
        "file": "/data/nextcloud/lib/private/Route/Router.php",
        "line": 297,
        "function": "call_user_func",
        "args": [
          {
            "__class__": "OC\\AppFramework\\Routing\\RouteActionHandler"
          },
          {
            "_route": "richdocuments.settings.setSettings"
          }
        ]
      },
      {
        "file": "/data/nextcloud/lib/base.php",
        "line": 1012,
        "function": "match",
        "class": "OC\\Route\\Router",
        "type": "->",
        "args": [
          "/apps/richdocuments/ajax/admin.php"
        ]
      },
      {
        "file": "/data/nextcloud/index.php",
        "line": 37,
        "function": "handleRequest",
        "class": "OC",
        "type": "::",
        "args": []
      }
    ],
    "File": "/data/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
    "Line": 110,
    "Previous": {
      "Exception": "Error",
      "Message": "Call to a member function xpath() on bool",
      "Code": 0,
      "Trace": [
        {
          "file": "/data/nextcloud/apps/richdocuments/lib/Controller/SettingsController.php",
          "line": 175,
          "function": "getUrlSrc",
          "class": "OCA\\Richdocuments\\WOPI\\Parser",
          "type": "->",
          "args": [
            "Capabilities"
          ]
        },
        {
          "file": "/data/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
          "line": 170,
          "function": "setSettings",
          "class": "OCA\\Richdocuments\\Controller\\SettingsController",
          "type": "->",
          "args": [
            "https://ncp.exemple.org/apps/richdocumentscode_arm64/proxy.php?req=",
            false,
            null,
            null,
            null,
            null,
            null
          ]
        },
        {
          "file": "/data/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
          "line": 100,
          "function": "executeController",
          "class": "OC\\AppFramework\\Http\\Dispatcher",
          "type": "->",
          "args": [
            {
              "__class__": "OCA\\Richdocuments\\Controller\\SettingsController"
            },
            "setSettings"
          ]
        },
        {
          "file": "/data/nextcloud/lib/private/AppFramework/App.php",
          "line": 137,
          "function": "dispatch",
          "class": "OC\\AppFramework\\Http\\Dispatcher",
          "type": "->",
          "args": [
            {
              "__class__": "OCA\\Richdocuments\\Controller\\SettingsController"
            },
            "setSettings"
          ]
        },
        {
          "file": "/data/nextcloud/lib/private/AppFramework/Routing/RouteActionHandler.php",
          "line": 47,
          "function": "main",
          "class": "OC\\AppFramework\\App",
          "type": "::",
          "args": [
            "OCA\\Richdocuments\\Controller\\SettingsController",
            "setSettings",
            {
              "__class__": "OC\\AppFramework\\DependencyInjection\\DIContainer"
            },
            {
              "_route": "richdocuments.settings.setSettings"
            }
          ]
        },
        {
          "function": "__invoke",
          "class": "OC\\AppFramework\\Routing\\RouteActionHandler",
          "type": "->",
          "args": [
            {
              "_route": "richdocuments.settings.setSettings"
            }
          ]
        },
        {
          "file": "/data/nextcloud/lib/private/Route/Router.php",
          "line": 297,
          "function": "call_user_func",
          "args": [
            {
              "__class__": "OC\\AppFramework\\Routing\\RouteActionHandler"
            },
            {
              "_route": "richdocuments.settings.setSettings"
            }
          ]
        },
        {
          "file": "/data/nextcloud/lib/base.php",
          "line": 1012,
          "function": "match",
          "class": "OC\\Route\\Router",
          "type": "->",
          "args": [
            "/apps/richdocuments/ajax/admin.php"
          ]
        },
        {
          "file": "/data/nextcloud/index.php",
          "line": 37,
          "function": "handleRequest",
          "class": "OC",
          "type": "::",
          "args": []
        }
      ],
      "File": "/data/nextcloud/apps/richdocuments/lib/WOPI/Parser.php",
      "Line": 46
    },
    "CustomMessage": "--"
  },
  "userAgent": "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:83.0) Gecko/20100101 Firefox/83.0",
  "version": "19.0.2.2"
}

1 Like
  • Did you install both of the Collabora apps from the appstore? You need both.
  • What device you are running ncp on?