[Support] Linuxserver.io - Nextcloud


Recommended Posts

18 minutes ago, Jessie said:

CHBMB, is there a way I can get a previous container eg nextcloud v13.00 for testing purposes.

I would like to load it into this new system I am having issues with to try and determine whether the slow response is due to nextcloud 13.0.4 or something else.

 

Try a different tag

 

https://hub.docker.com/r/linuxserver/nextcloud/tags/

 

Rule of thumb, Generally the tag changes by +1 each week

Link to comment
14 hours ago, Jessie said:

You learn something new everyday.

 

Thanks for that.

 

Well it looks like it's not nextcloud.  I replicated a second server on my own system using 13.04 and it is fast.  I loaded v13.0.0 onto the new machine and it is still slow. Might have to look at the database engine and the interconnect.

 

Any tips?

 

Link to comment
1 hour ago, Jessie said:

Well it looks like it's not nextcloud.  I replicated a second server on my own system using 13.04 and it is fast.  I loaded v13.0.0 onto the new machine and it is still slow. Might have to look at the database engine and the interconnect.

 

Any tips?

 

 

I haven't read back, but your database is on your cache drive and it's ssd? 

Your storage for nextcloud is on the array? Might be that the drives have to spin up when logging in. 

Link to comment
6 hours ago, saarg said:

 

I haven't read back, but your database is on your cache drive and it's ssd? 

Your storage for nextcloud is on the array? Might be that the drives have to spin up when logging in. 

Database is on SSD Cache.

The Storage drive on the Array is set to never spin down.

Link to comment

Hi.  I just recently tried Nextcloud.  I'm so impressed, never thought it will give such functionality to my NAS.  

 

I have a concern.  Mostly my files are not very important, and I use drives pulled from enterprise servers before.  I created a Nextcloud share, just  a single drive.  Assuming Parity drive, nor Cache drive doesn't fail, is this drive (where Nextcloud share exist) still considered safe, since I am also using the parity?  So If the drive fails, it can still be recovered?  

 

If for whatever reason, the Nextcloud docker app goes crazy, can all files uploaded to it still be seen directly via disk share?  I've actually confirmed this already, just want to know whether there's something I'm missing.

 

Link to comment

Another question, after installing Collabora online, I went to Nextcloud settings, and set 

 

Collabora Online serverURL (and port) of the Collabora Online server that provides the editing functionality as a WOPI client. 

I went in to a folder, and started to create a document, presentation, spreadsheet, I got the following error.

 

Internal Server Error

The server was unable to complete your request.

If this happens again, please send the technical details below to the server administrator.

More details can be found in the server log.

Technical details

  • Remote Address: 192.168.1.1
  • Request ID: vw9L4toRNjdFS

 

I think this is what's on the logs:

 

Error richdocuments GuzzleHttp\Exception\RequestExceptioncURL error 60: SSL certificate problem: self signed certificate

 

How do I fix this?

 

 

Link to comment
Hi.  I just recently tried Nextcloud.  I'm so impressed, never thought it will give such functionality to my NAS.  
 
I have a concern.  Mostly my files are not very important, and I use drives pulled from enterprise servers before.  I created a Nextcloud share, just  a single drive.  Assuming Parity drive, nor Cache drive doesn't fail, is this drive (where Nextcloud share exist) still considered safe, since I am also using the parity?  So If the drive fails, it can still be recovered?  
 
If for whatever reason, the Nextcloud docker app goes crazy, can all files uploaded to it still be seen directly via disk share?  I've actually confirmed this already, just want to know whether there's something I'm missing.
 
Yes, your files are visible on the share.

You could have discovered this by looking in the share....

Regards Collabora, the error tells you what's wrong, the SSL cert is self signed. You need to put Nexcloud behind the LetsEncrypt reverse proxy and point Collabora to that URL and it will hit a LetsEncrypt certificate that isn't self signed.
Link to comment

Currently having issues with this.

 

letsencrypt/nginx/site-confs/default

upstream backend {
    server 10.0.0.110:19999;
    keepalive 64;
}
 
server {
    listen 443 ssl default_server;
    listen 80 default_server;
    root /config/www;
    index index.html index.htm index.php;
#	auth_basic "Administrator Login";
#	auth_basic_user_file /config/nginx/.htpasswd;
	
    server_name _;
 
    ssl_certificate /config/keys/letsencrypt/fullchain.pem;
    ssl_certificate_key /config/keys/letsencrypt/privkey.pem;
    ssl_dhparam /config/nginx/dhparams.pem;
    ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:AES:CAMELLIA:DES-CBC3-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!MD5:!PSK:!aECDH:!EDH-DSS-DES-CBC3-SHA:!EDH-RSA-DES-CBC3-SHA:!KRB5-DES-CBC3-SHA';
    ssl_prefer_server_ciphers on;
	proxy_set_header Referer "";
 
    client_max_body_size 0;
 
    location = / {
        return 301 /nextcloud;
    }

   
    location /nextcloud {
        include /config/nginx/proxy.conf;
        proxy_pass https://10.0.0.110:447/nextcloud;
    }
   
    location ~ /netdata/(?<ndpath>.*) {
        proxy_set_header X-Forwarded-Host $host;
        proxy_set_header X-Forwarded-Server $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_pass http://backend/$ndpath$is_args$args;
        proxy_http_version 1.1;
        proxy_pass_request_headers on;
        proxy_set_header Connection "keep-alive";
        proxy_store off;
    }
}

nextcloud/www/nextcloud/config/config.php

 

<?php
$CONFIG = array (
  'memcache.local' => '\\OC\\Memcache\\APCu',
  'datadirectory' => '/data',
  'instanceid' => '************',
  'passwordsalt' => '******************',
  'secret' => '***************************',
  'trusted_domains' => 
  array (
    0 => '10.0.0.110:447',
	1 => 'n1************',
    2 => 'www.n1**************', 
  ),
  'trusted_proxies' => '10.0.0.110:447',
  'forwarded_for_headers' => array('HTTP_X_FORWARDED_FOR'),
  
  'overwritewebroot' => '/nextcloud',
  'overwrite.cli.url' => 'https://.n1**********',
  'overwritehost' => 'n1**********',
  'overwriteprotocol' => 'https',
  'dbtype' => 'mysql',
  'version' => '13.0.4.0',
  'dbname' => 'nextcloud',
  'dbhost' => '10.0.0.110:3306',
  'dbport' => '',
  'dbtableprefix' => 'oc_',
  'dbuser' => '********',
  'dbpassword' => '************',
  'installed' => true,
);

nextcloud/nginx/site-confs/default

 

upstream php-handler {
  server 127.0.0.1:9000;
# server unix:/var/run/php/php7.0-fpm.sock;
}

server {
  listen 80;
  server_name _;
  enforce https
  return 301 https://$server_name$request_uri;
}

server {
  listen 443 ssl;
  server_name _;

  ssl_certificate /config/keys/cert.crt;
  ssl_certificate_key /config/keys/cert.key;

  # Add headers to serve security related headers
  add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;";
  add_header X-Content-Type-Options nosniff;
  # add_header X-Frame-Options "SAMEORIGIN";
  add_header X-XSS-Protection "1; mode=block";
  add_header X-Robots-Tag none;
  add_header X-Download-Options noopen;
  add_header X-Permitted-Cross-Domain-Policies none;

  # Path to the root of your installation
  root /config/www/nextcloud/;
  # set max upload size
  client_max_body_size 10G;
  fastcgi_buffers 64 4K;

  # Disable gzip to avoid the removal of the ETag header
  gzip off;

  # Uncomment if your server is build with the ngx_pagespeed module
  # This module is currently not supported.
  #pagespeed off;

  index index.php;
  error_page 403 /core/templates/403.php;
  error_page 404 /core/templates/404.php;

  rewrite ^/.well-known/carddav /remote.php/dav/ permanent;
  rewrite ^/.well-known/caldav /remote.php/dav/ permanent;

  # The following 2 rules are only needed for the user_webfinger app.
  # Uncomment it if you're planning to use this app.
  #rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
  #rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;

  location = /robots.txt {
    allow all;
    log_not_found off;
    access_log off;
  }

  location ~ ^/(build|tests|config|lib|3rdparty|templates|data)/ {
    deny all;
  }

  location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
    deny all;
  }

  location / {

    rewrite ^/remote/(.*) /remote.php last;

    rewrite ^(/core/doc/[^\/]+/)$ $1/index.html;

    try_files $uri $uri/ =404;
  }

  location ~ \.php(?:$|/) {
    fastcgi_split_path_info ^(.+\.php)(/.+)$;
    include /etc/nginx/fastcgi_params;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_param PATH_INFO $fastcgi_path_info;
    fastcgi_param HTTPS on;
    fastcgi_param modHeadersAvailable true; #Avoid sending the security headers twice
    fastcgi_pass php-handler;
    fastcgi_intercept_errors on;
  }

  # Adding the cache control header for js and css files
  # Make sure it is BELOW the location ~ \.php(?:$|/) { block
  location ~* \.(?:css|js)$ {
    add_header Cache-Control "public, max-age=7200";
    # Add headers to serve security related headers
    add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload;";
    add_header X-Content-Type-Options nosniff;
    add_header X-Frame-Options "SAMEORIGIN";
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Robots-Tag none;
    add_header X-Download-Options noopen;
    add_header X-Permitted-Cross-Domain-Policies none;
    # Optional: Don't log access to assets
    access_log off;
  }

  # Optional: Don't log access to other assets
  location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|swf)$ {
    access_log off;
  }
}

This config currently let's me access the webui but gives me the 'This directory is unavailable' message.

 

I've tried

 root /config/www/;

instead of

 root /config/www/nextcloud/;

but doing so causes a 404 error

Link to comment

Not sure if someone else posted this, but was wondering how to set up pretty url's within this container. I have tried adjusting my nginx conf, but any change leads to 404's. Does anyone have an example conf with this? 

 

FWIW, I am always using a nginx reverse proxy in front of the container. 

Edited by bpage
Link to comment

im running Nextcloud https://hub.docker.com/r/linuxserver/nextcloud/

It's been updated often from pulling down in unraid without any issues.

 

I noticed in the webui today that the version is 12.0.4 and the latest is 13.0.4.

Do i need to do something manual to update this other than pull down the docker ?

Link to comment
On 6/29/2018 at 8:08 PM, jang430 said:

Wow, sounds like a daunting task:-)

Never studied let's encrypt yet. Is there any setup guide that's been written before?




Sent from my iPhone using Tapatalk

I followed this to get everything setup. I had to do a bit of tweaking with the config files, because my setup was different than his.

Link to comment
  • 2 weeks later...

Hi All, 

 

I've setup mariadb, letsencrypt and nextcloud using the following guide: https://techcoreduo.com/2018/04/28/how-to-install-nextcloud-on-unraid/

 

Nextcloud runs and I am able to access it outside of my local network. However, I want to add some of my unraid shares to nextcloud so I can share files easily with folks outside my home. When I try to use the external storages plugin to do so it doens't seem to be working. See below:

 

1917370164_ScreenShot2018-07-16at11_53_51AM.thumb.png.a0da617ae3e0ce6229620e181704c417.png

 

Any idea why?

Link to comment
On 7/6/2018 at 8:06 PM, jonathanm said:

Why would you do that? There is a setup guide in the first post of this thread, specifically for this docker.

 

I didn't realize the letsencrypt tutorial was included. It states that letsencrypt is a prereq, so that made me think I needed to have that configured first, so I skipped the tutorial. ?‍♀️ (not sure why they only have girl emoji for this)

 

Should've kept reading, but either way the tutorial I followed included the DNS setup as well, so I think it will be helpful to some people.

Link to comment
On 7/16/2018 at 12:05 PM, phizz said:

Hi All, 

 

I've setup mariadb, letsencrypt and nextcloud using the following guide: https://techcoreduo.com/2018/04/28/how-to-install-nextcloud-on-unraid/

 

Nextcloud runs and I am able to access it outside of my local network. However, I want to add some of my unraid shares to nextcloud so I can share files easily with folks outside my home. When I try to use the external storages plugin to do so it doens't seem to be working. See below:

 

1917370164_ScreenShot2018-07-16at11_53_51AM.thumb.png.a0da617ae3e0ce6229620e181704c417.png

 

Any idea why?

Check with your ISP to make sure you have port 80 opened, some ISPs block that port by default and you have to request to have it opened.

Link to comment

Is anyone able to provide some advice on how to get this to work behind Caddy?

I followed these instructions here: https://techcoreduo.com/2018/04/28/how-to-install-nextcloud-on-unraid/#comments

They advise to use LetsEncrypt, but I am already using a Caddy docker to reverse proxy to my other web based services.

I've got this in my caddy config file for the server:

nextcloud.mydoman.com {
gzip
proxy / 192.168.1.9:443 {
        transparent
        }
}

Whenever I try to access the server via the URL, I get the following error from the Nginx built into the NextCloud docker:

Quote

400 Bad Request

The plain HTTP request was sent to HTTPS port

nginx/1.12.2

Any idea what I'm doing wrong?

I can access NextCloud internally without any issue. It's just the caddy redirect breaks something when forwarding to the server.

Edited by the1poet
spelling
Link to comment
4 minutes ago, nuhll said:

\\192.168.86.2\appdata\nextcloud\www\nextcloud\config\config.php

 

  'trusted_domains' => 
  array (
    0 => '192.168.86.2:9090',

 

 

 

 

Thanks. I added the domain to the config file, but I'm still getting the same error message.

This is what my config.php file has now:

array (
    0 => '192.168.1.x',
    1 => 'nextcloud.mydomain.com',
  ),

 

Link to comment
1 hour ago, the1poet said:

Is anyone able to provide some advice on how to get this to work behind Caddy?

I followed these instructions here: https://techcoreduo.com/2018/04/28/how-to-install-nextcloud-on-unraid/#comments

They advise to use LetsEncrypt, but I am already using a Caddy docker to reverse proxy to my other web based services.

I've got this in my caddy config file for the server:


nextcloud.mydoman.com {
gzip
proxy / 192.168.1.9:443 {
        transparent
        }
}

Whenever I try to access the server via the URL, I get the following error from the Nginx built into the NextCloud docker:

Any idea what I'm doing wrong?

I can access NextCloud internally without any issue. It's just the caddy redirect breaks something when forwarding to the server.

After some googling, I found the solution here:

https://caddy.community/t/solved-reverse-proxy-is-redirecting-to-local-ip-in-remote-browser/1985/5

Basically, I needed to add "insecure_skip_verify" to the block in caddy.

It now works fine.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.