Nextcloud + Rocket.Chat

I’m a long time Nextcloud user and actually recently set up Rocket.Chat to try out my new Kubernetes setup with a new app. Rocket.Chat was more or less a random choice. I initially thought, it’s just some boring Slack clone, but no, it’s actually really good. It has so many options to offer, it’s an administrator’s dream!

Seeing those two collaborate now, seems amazing. I have high hopes, can’t stop them from appearing when seeing this.

Looking forward to it!

Anyone else here with Nextcloud and/or Rocket.Chat experience?

I tried NextCloud, OwnCloud and Resilio Sync as potential Dropbox replacements ~5 years ago…

Resilio Sync won out… But I liked NextCloud, it came a close second…

All three of them came as installable plugins for FreeNAS. FreeNAS no longer lists ResilioSync as an available plugin, but it still lists NextCloud, but my FreeNAS install is about ~3-4 years old (it’s now the latest FreeNAS “train” 11.3) - and I installed Resilio Sync back then…

Anyway - decided I would try out NextCloud again, but the damn plugin won’t install on FreeNAS, crashes everytime, through in the towl. I won’t bother asking any of the FreeNAS forums for assistance, because they’re mostly an unpleasant, unwashed and uncouth bunch of w@nkers (it’s been my experience anyway). *

I might give it another go over the weekend (it’s a long weekend here).

I seem to remember the roadblock was something to do with MySQL or PostgreSQL? Went into the too hard basket, and I deleted the “orphaned” jail from my FreeBSD / FreeNAS setup…

Wish me luck! I won’t try it tonight, it’s Friday and damn near beer o’clock!

* I just remembered why I went with Resilio, the client install on ARM based Debian (at the time mostly NextThing CHIP, but also BananaPi and an RPi3) was so easy (add a repo, and apt install), and every thing I read about NextCloud and Owncloud on ARM Linux was using it as a server, but I wanted clients (and Dropbox don’t have ARM Linux clients either).

– edit –

Didn’t over indulge in beer (I don’t normally even drink beer anyway) - had a few glasses of red wine tonight when I got home, it didn’t chill me out - FreeNAS is as obtuse as ever - one post on forum for getting NextCloud says “do X”, another says “do Y”. What’s so FUCKING FRUSTRATING - is that installing the FreeNAS plug in 2017 was a whole order of magnitude SIMPLER than it is today in 2022…

It makes me so angry - ended up calling my NextCloud instance “SHITSANDWICH” out of frustration : and when I got that far (letting it use DHCP - which I really HATE - I’ve got 253 addresses on my private LAN - always go for fixed IP address on the server!). I got the post install thing with all my credentials for the MySQL instance, hit the management frontend, and then I remembered what I FUCKING hated about it last time I tried it (i.e. sometime in 2022) - there’s like 35 different config.php files in the jail instance of FreeBSD :


And the formatting is so OBTUSE - aren’t things supposed to get simpler? Like entropy? It’s so SHITTY it can’t even tell you WHICH of those 35 config/config.php files to edit! Arrgggh! I’d never pay these people at IX systems a cent to use their “TrueNAS” if this is the best they can do…

Anyway I’ve flushed SHITSANDWICH down the shitter, and might try again tomorrow, but probably not Sunday, it’s my “youngest’s” birthday - she’s THIRTY!

I know that feeling. Recently, I was trying to get to understand how I can switch video quality in general, when switching scenes in OBS. Then I registered in the official forum for this product. I listed a lot of ways to reduce video quality, including changing resolution. Changing the video resolution was just one of many points in that list. I put it in that list, for completeness, however I knew from another post on the same forum, that resolution cannot be changed like that.
So, I thought, okay it’s one thing in that list of many, so I would expect, people address most of the things in the list and just ignore the resolution part, as I was just getting a point across.

Very soon, after I posted that thread, I got a reply.

Resolution cannot be changed on the fly. Use profiles, instead.



This is obviously just a mild example of disappointing experiences. I know a lot of other fora on the internet, where there are always a bunch of top dogs, sometimes only a single one, that have this attitude of “I spent 30 years on this forum and my real life still has not improved - I must release my frustration onto newcomers”. At least, that’s my impression of those people.

It’s also the same kind of top dog, who sees a small issue, he could answer quickly, but instead he says something like “here you are, read the manual to fix your issue” and then there is a link to the manual appended, the manual being a 1337 pages long, filled with tech speak, the person asking the question probably does not understand, anyway. Well, thanks for the help, you elitist prick.

Obviously, it’s annoying, if people ask the simplest questions, one simple DuckDuckGo search would already easily answer. I get that. I know that feeling, too. But there are honestly quite a bunch of people who have read the manual, the --help, searched on DuckDuckGo and still did not find a solution and then decided to open that thread.
Just because that issue seems simple to that elitist prick, does not mean it is in reality simple for the person asking the question.

To be honest & fair about that topic, I’ve seen a lot of people having network trouble with *BSD, as it is quite restrictive and super extra secure. If the user does not have extensive knowledge about how to deal with network on *BSD, then it’s very easy for him to run into issues. The last time I used a BSD variant was due to OPNsense. Wasn’t easy to deal with it, I remember. Well, easier than setting it up from scratch, but still (Talking about the pure BSD CLI usage, not the WebUI for the firewall software.).

I’m pretty sure, it would all work a lot easier on some more generic and permissive distribution, in terms of network setups.

I, too, had that issue with the untrusted domain thing, but I managed to fix it rather quickly. Was no biggie. But I was setting it up on Debian, not on a BSD variant.

Depends on what exactly you want to achieve. If you just want to e.g. access files from Nextcloud on any device, you can use the WebDAV interface built into Nextcloud. Just copy the WebDAV URL in the bottom left corner of Nextcloud (Files) and insert it into any WebDAV client. WebDAV is very universal and available on all the SBCs running any Linux, as far as I know.

:rofl: :rofl: :rofl:

That’s great. Tell her, some random dude on the internet is congratulating her! :laughing:

The ONLY way to get the plugin to install and run “properly” is to accept the DHCP option.

Here’s the “trusted_domains” stanza in /usr/local/www/nextcloud/config/config.php

  'trusted_domains' =>
  array (
    0 => '0.0.0.0',
    1 => 'localhost',
    2 => '10.1.1.10',
  ),

Decided I don’t really care if you guys see my local LAN IP addresses (I wouldn’t do that with customer stuff though).

Note - I added / updated it from this :

  'trusted_domains' =>
  array (
    0 => 'localhost',
    1 => '10.1.1.10',
  ),

But I still get that lame arse message. I mean why be so anal about security? IT’s not like I’m deploying this on the public cloud with a “real” IP address…

Anyway - opening the floodgates fixed it (till the next "barf’ step where it :

array (
0 => ‘*’,
1 => ‘0.0.0.0’,
2 => ‘localhost’,
3 => ‘10.1.1.10’,
),

How many times do we open the floodgates, and never get around to closing them again? :smiley: Me? All the time!

Anyway - that let me proceed to the next failure - I’ve NEVER been able to resolve :

And the LAST line of the /var/log/nextcloud/nextcloud.log file :

root@SHITSANDWICH:/var/log/nextcloud # tail -1 nextcloud.log

{"reqId":"CcAqyyO7W4HFRJ4LHqnd","level":3,"time":"2022-03-06T05:57:59+00:00","remoteAddr":"10.1.1.162","user":"ncadmin","app":"index","method":"GET","url":"/js/core/merged-template-prepend.js?v=0e2e1ef6-0","message":"An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size","userAgent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36","version":"22.1.1.2","exception":{"Exception":"Doctrine\\DBAL\\Exception\\DriverException","Message":"An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size","Code":1038,"Trace":[{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php","line":1728,"function":"convert","class":"Doctrine\\DBAL\\Driver\\API\\MySQL\\ExceptionConverter","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php","line":1667,"function":"handleDriverException","class":"Doctrine\\DBAL\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php","line":1040,"function":"convertExceptionDuringQuery","class":"Doctrine\\DBAL\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/Connection.php","line":231,"function":"executeQuery","class":"Doctrine\\DBAL\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":210,"function":"executeQuery","class":"OC\\DB\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":287,"function":"execute","class":"Doctrine\\DBAL\\Query\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1340,"function":"execute","class":"OC\\DB\\QueryBuilder\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1276,"function":"getRows","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php","line":123,"function":"asItems","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php","line":339,"function":"getItemsFromRequest","class":"OCA\\Circles\\Db\\ShareWrapperRequestBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php","line":180,"function":"getSharedWith","class":"OCA\\Circles\\Db\\ShareWrapperRequest","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php","line":557,"function":"getSharedWith","class":"OCA\\Circles\\Service\\ShareWrapperService","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Share20/Manager.php","line":1360,"function":"getSharedWith","class":"OCA\\Circles\\ShareByCircleProvider","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php","line":79,"function":"getSharedWith","class":"OC\\Share20\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php","line":118,"function":"getMountsForUser","class":"OCA\\Files_Sharing\\MountProvider","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":429,"function":"addMountForUser","class":"OC\\Files\\Config\\MountProviderCollection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":354,"function":"initMountPoints","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php","line":325,"function":"init","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php","line":91,"function":"setupFS","class":"OC_Util","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/View.php","line":1385,"function":"find","class":"OC\\Files\\Mount\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/Root.php","line":200,"function":"getFileInfo","class":"OC\\Files\\View","type":"->"},{"function":"get","class":"OC\\Files\\Node\\Root","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":65,"function":"call_user_func_array"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":142,"function":"__call","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php","line":141,"function":"get","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/core/Controller/JsController.php","line":72,"function":"getFolder","class":"OC\\Files\\AppData\\AppData","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":217,"function":"getJs","class":"OC\\Core\\Controller\\JsController","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":126,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/App.php","line":156,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Route/Router.php","line":301,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/usr/local/www/nextcloud/lib/base.php","line":1000,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/usr/local/www/nextcloud/index.php","line":36,"function":"handleRequest","class":"OC","type":"::"}],"File":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php","Line":114,"Previous":{"Exception":"Doctrine\\DBAL\\Driver\\PDO\\Exception","Message":"SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size","Code":1038,"Trace":[{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php","line":84,"function":"new","class":"Doctrine\\DBAL\\Driver\\PDO\\Exception","type":"::"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php","line":1030,"function":"execute","class":"Doctrine\\DBAL\\Driver\\PDO\\Statement","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/Connection.php","line":231,"function":"executeQuery","class":"Doctrine\\DBAL\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":210,"function":"executeQuery","class":"OC\\DB\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":287,"function":"execute","class":"Doctrine\\DBAL\\Query\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1340,"function":"execute","class":"OC\\DB\\QueryBuilder\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1276,"function":"getRows","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php","line":123,"function":"asItems","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php","line":339,"function":"getItemsFromRequest","class":"OCA\\Circles\\Db\\ShareWrapperRequestBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php","line":180,"function":"getSharedWith","class":"OCA\\Circles\\Db\\ShareWrapperRequest","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php","line":557,"function":"getSharedWith","class":"OCA\\Circles\\Service\\ShareWrapperService","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Share20/Manager.php","line":1360,"function":"getSharedWith","class":"OCA\\Circles\\ShareByCircleProvider","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php","line":79,"function":"getSharedWith","class":"OC\\Share20\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php","line":118,"function":"getMountsForUser","class":"OCA\\Files_Sharing\\MountProvider","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":429,"function":"addMountForUser","class":"OC\\Files\\Config\\MountProviderCollection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":354,"function":"initMountPoints","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php","line":325,"function":"init","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php","line":91,"function":"setupFS","class":"OC_Util","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/View.php","line":1385,"function":"find","class":"OC\\Files\\Mount\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/Root.php","line":200,"function":"getFileInfo","class":"OC\\Files\\View","type":"->"},{"function":"get","class":"OC\\Files\\Node\\Root","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":65,"function":"call_user_func_array"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":142,"function":"__call","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php","line":141,"function":"get","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/core/Controller/JsController.php","line":72,"function":"getFolder","class":"OC\\Files\\AppData\\AppData","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":217,"function":"getJs","class":"OC\\Core\\Controller\\JsController","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":126,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/App.php","line":156,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Route/Router.php","line":301,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/usr/local/www/nextcloud/lib/base.php","line":1000,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/usr/local/www/nextcloud/index.php","line":36,"function":"handleRequest","class":"OC","type":"::"}],"File":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php","Line":26,"Previous":{"Exception":"PDOException","Message":"SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size","Code":"HY001","Trace":[{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php","line":82,"function":"execute","class":"PDOStatement","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php","line":1030,"function":"execute","class":"Doctrine\\DBAL\\Driver\\PDO\\Statement","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/Connection.php","line":231,"function":"executeQuery","class":"Doctrine\\DBAL\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php","line":210,"function":"executeQuery","class":"OC\\DB\\Connection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php","line":287,"function":"execute","class":"Doctrine\\DBAL\\Query\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1340,"function":"execute","class":"OC\\DB\\QueryBuilder\\QueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php","line":1276,"function":"getRows","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php","line":123,"function":"asItems","class":"ArtificialOwl\\MySmallPhpTools\\Db\\Nextcloud\\nc22\\NC22ExtendedQueryBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php","line":339,"function":"getItemsFromRequest","class":"OCA\\Circles\\Db\\ShareWrapperRequestBuilder","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php","line":180,"function":"getSharedWith","class":"OCA\\Circles\\Db\\ShareWrapperRequest","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php","line":557,"function":"getSharedWith","class":"OCA\\Circles\\Service\\ShareWrapperService","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Share20/Manager.php","line":1360,"function":"getSharedWith","class":"OCA\\Circles\\ShareByCircleProvider","type":"->"},{"file":"/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php","line":79,"function":"getSharedWith","class":"OC\\Share20\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php","line":118,"function":"getMountsForUser","class":"OCA\\Files_Sharing\\MountProvider","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":429,"function":"addMountForUser","class":"OC\\Files\\Config\\MountProviderCollection","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Filesystem.php","line":354,"function":"initMountPoints","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php","line":325,"function":"init","class":"OC\\Files\\Filesystem","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php","line":91,"function":"setupFS","class":"OC_Util","type":"::"},{"file":"/usr/local/www/nextcloud/lib/private/Files/View.php","line":1385,"function":"find","class":"OC\\Files\\Mount\\Manager","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/Root.php","line":200,"function":"getFileInfo","class":"OC\\Files\\View","type":"->"},{"function":"get","class":"OC\\Files\\Node\\Root","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":65,"function":"call_user_func_array"},{"file":"/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php","line":142,"function":"__call","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php","line":141,"function":"get","class":"OC\\Files\\Node\\LazyFolder","type":"->"},{"file":"/usr/local/www/nextcloud/core/Controller/JsController.php","line":72,"function":"getFolder","class":"OC\\Files\\AppData\\AppData","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":217,"function":"getJs","class":"OC\\Core\\Controller\\JsController","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php","line":126,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/AppFramework/App.php","line":156,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/usr/local/www/nextcloud/lib/private/Route/Router.php","line":301,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/usr/local/www/nextcloud/lib/base.php","line":1000,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/usr/local/www/nextcloud/index.php","line":36,"function":"handleRequest","class":"OC","type":"::"}],"File":"/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php","Line":82}},"CustomMessage":"--"}}

What kind of barely functioning sociopath borderline psychopath implements logging like this? I don’t even know if there’s any secrets in there - because I’m a human and I don’t read strings that are 16818 characters long!

Hmmm - I’ve got a Pi3 doing nada (in fact both my RPi4 8 GB models are powered off) - and also my dual core Celeron Gigabyte Brix is doing nothing. I guess I could deploy it on a dedicated device… I just seems to make more sense to host it on my main storage hardware. I reckon I’ll have a SHIT load easer time doing this on a modern Debian or Ubuntu machine than inside a FreeBSD jail. I’m kinda leaning to RPi4, 'cause it’s shitloads easier to start off headless in RPi land than it is in Intel/AMD “world” (e.g. edit /boot/config.txt on the SD-card - couldn’t be easier!) - i.e. I don’t have to break out a PC monitor to get started…

I don’t think adding NextCloud onto my Pi4 4 GB headless “server” would be a great idea, it’s already running PiHole and OpenVPN server…

Actually - I might have to destroy that Pi-Hole - piece of shit broke everything when it updated from 5.x to 5.9 - now no longer works as my internet DNS server…
– edit –
Probably going to go Bullseye (Debian 11) 64 bit from the Pi Foundation and follow this guide :

Choices schmoices - Bullseye still seems too bleeding edge to me… Might try it out on Pi4 on Buster (debian 10) 64 bit and use this guide :
Updated for Pi 4 / Buster: Simple Nextcloud Installation on Raspberry Pi - Raspberry Pi Forums, then here :
http://unixetc.co.uk/2016/11/20/simple-nextcloud-installation-on-raspberry-pi/

It still seems very UNIX-y and not a task to embarked on lightly for the ‘clickety click, click’ system admin “crowd” (I don’t think Windows System Adminsitrators should be allowed to use that job title - unless they’re powershell gurus :smiley: )…

– edit –
Wow - this is turning into War and Peace (and a shame Putain can’t take a leaf out of the great Tolstoy’s book, i.e. way towards the end, i.e. the “Peace” bit - or just generally Tolstoy’s pacifist nature during his last ~20 years) :
I realised that logging was JSON. So I saved the last line and parsed it through python :

And spotted these at the top :

╭─x@titan ~/ResilioSync/motorforker/configs/NextCloud-SHITSANDWICH  
╰─➤  cat shitsarnylog.json| python -m json.tool
{
    "app": "index",
    "exception": {
        "Code": 1038,
        "CustomMessage": "--",
        "Exception": "Doctrine\\DBAL\\Exception\\DriverException",
        "File": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php",
        "Line": 114,
        "Message": "An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size",

So - I found this at StacOverflow :

Added “sort_buffer_size=256k” to my [mysqld] stanza in /usr/local/etc/mysql/my.cnf and restarted (everything) with “service -R” (much quicker than a reboot - but - nextcloud doesn’t seem to have it’s own specific daemon, I’m guessing some PHP running in nginx…
And got a tad further :


Not quite sure if we’re at “WOO HOO” status yet, or not…

Nothing is more permanent, than a temporary fix. :smiley:

From a security focused perspective, it’s safer to generally only allow safe operations. For example, there are a lot of web based solutions completely disregarding the concept of unencrypted HTTP connections. People (plebs) who try to add insecure Docker registries to Kubernetes deal with this all the time. The answer is most of the time to just start using HTTPS and not doing some local registry crap over http://localhost.

I think you are looking at it from the wrong shore.

{
   "app": "index",
   "exception": {
      "Code": 1038,
      "CustomMessage": "–",
      "Exception": "DoctrineDBALExceptionDriverException",
      "File": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/API/MySQL/ExceptionConverter.php",
      "Line": 114,
      "Message": "An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size",
      "Previous": {
         "Code": 1038,
         "Exception": "DoctrineDBALDriverPDOException",
         "File": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Exception.php",
         "Line": 26,
         "Message": "SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size",
         "Previous": {
            "Code": "HY001",
            "Exception": "PDOException",
            "File": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
            "Line": 82,
            "Message": "SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size",
            "Trace": [
               {
                  "class": "PDOStatement",
                  "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
                  "function": "execute",
                  "line": 82,
                  "type": "->"
               },
               {
                  "class": "DoctrineDBALDriverPDOStatement",
                  "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
                  "function": "execute",
                  "line": 1030,
                  "type": "->"
               },
               {
                  "class": "DoctrineDBALConnection",
                  "file": "/usr/local/www/nextcloud/lib/private/DB/Connection.php",
                  "function": "executeQuery",
                  "line": 231,
                  "type": "->"
               },
               {
                  "class": "OCDBConnection",
                  "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
                  "function": "executeQuery",
                  "line": 210,
                  "type": "->"
               },
               {
                  "class": "DoctrineDBALQueryQueryBuilder",
                  "file": "/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
                  "function": "execute",
                  "line": 287,
                  "type": "->"
               },
               {
                  "class": "OCDBQueryBuilderQueryBuilder",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
                  "function": "execute",
                  "line": 1340,
                  "type": "->"
               },
               {
                  "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
                  "function": "getRows",
                  "line": 1276,
                  "type": "->"
               },
               {
                  "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php",
                  "function": "asItems",
                  "line": 123,
                  "type": "->"
               },
               {
                  "class": "OCACirclesDbShareWrapperRequestBuilder",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php",
                  "function": "getItemsFromRequest",
                  "line": 339,
                  "type": "->"
               },
               {
                  "class": "OCACirclesDbShareWrapperRequest",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php",
                  "function": "getSharedWith",
                  "line": 180,
                  "type": "->"
               },
               {
                  "class": "OCACirclesServiceShareWrapperService",
                  "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php",
                  "function": "getSharedWith",
                  "line": 557,
                  "type": "->"
               },
               {
                  "class": "OCACirclesShareByCircleProvider",
                  "file": "/usr/local/www/nextcloud/lib/private/Share20/Manager.php",
                  "function": "getSharedWith",
                  "line": 1360,
                  "type": "->"
               },
               {
                  "class": "OCShare20Manager",
                  "file": "/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php",
                  "function": "getSharedWith",
                  "line": 79,
                  "type": "->"
               },
               {
                  "class": "OCAFiles_SharingMountProvider",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php",
                  "function": "getMountsForUser",
                  "line": 118,
                  "type": "->"
               },
               {
                  "class": "OCFilesConfigMountProviderCollection",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
                  "function": "addMountForUser",
                  "line": 429,
                  "type": "->"
               },
               {
                  "class": "OCFilesFilesystem",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
                  "function": "initMountPoints",
                  "line": 354,
                  "type": "::"
               },
               {
                  "class": "OCFilesFilesystem",
                  "file": "/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php",
                  "function": "init",
                  "line": 325,
                  "type": "::"
               },
               {
                  "class": "OC_Util",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php",
                  "function": "setupFS",
                  "line": 91,
                  "type": "::"
               },
               {
                  "class": "OCFilesMountManager",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/View.php",
                  "function": "find",
                  "line": 1385,
                  "type": "->"
               },
               {
                  "class": "OCFilesView",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Node/Root.php",
                  "function": "getFileInfo",
                  "line": 200,
                  "type": "->"
               },
               {
                  "class": "OCFilesNodeRoot",
                  "function": "get",
                  "type": "->"
               },
               {
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
                  "function": "call_user_func_array",
                  "line": 65
               },
               {
                  "class": "OCFilesNodeLazyFolder",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
                  "function": "__call",
                  "line": 142,
                  "type": "->"
               },
               {
                  "class": "OCFilesNodeLazyFolder",
                  "file": "/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php",
                  "function": "get",
                  "line": 141,
                  "type": "->"
               },
               {
                  "class": "OCFilesAppDataAppData",
                  "file": "/usr/local/www/nextcloud/core/Controller/JsController.php",
                  "function": "getFolder",
                  "line": 72,
                  "type": "->"
               },
               {
                  "class": "OCCoreControllerJsController",
                  "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
                  "function": "getJs",
                  "line": 217,
                  "type": "->"
               },
               {
                  "class": "OCAppFrameworkHttpDispatcher",
                  "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
                  "function": "executeController",
                  "line": 126,
                  "type": "->"
               },
               {
                  "class": "OCAppFrameworkHttpDispatcher",
                  "file": "/usr/local/www/nextcloud/lib/private/AppFramework/App.php",
                  "function": "dispatch",
                  "line": 156,
                  "type": "->"
               },
               {
                  "class": "OCAppFrameworkApp",
                  "file": "/usr/local/www/nextcloud/lib/private/Route/Router.php",
                  "function": "main",
                  "line": 301,
                  "type": "::"
               },
               {
                  "class": "OCRouteRouter",
                  "file": "/usr/local/www/nextcloud/lib/base.php",
                  "function": "match",
                  "line": 1000,
                  "type": "->"
               },
               {
                  "class": "OC",
                  "file": "/usr/local/www/nextcloud/index.php",
                  "function": "handleRequest",
                  "line": 36,
                  "type": "::"
               }
            ]
         },
         "Trace": [
            {
               "class": "DoctrineDBALDriverPDOException",
               "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Driver/PDO/Statement.php",
               "function": "new",
               "line": 84,
               "type": "::"
            },
            {
               "class": "DoctrineDBALDriverPDOStatement",
               "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
               "function": "execute",
               "line": 1030,
               "type": "->"
            },
            {
               "class": "DoctrineDBALConnection",
               "file": "/usr/local/www/nextcloud/lib/private/DB/Connection.php",
               "function": "executeQuery",
               "line": 231,
               "type": "->"
            },
            {
               "class": "OCDBConnection",
               "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
               "function": "executeQuery",
               "line": 210,
               "type": "->"
            },
            {
               "class": "DoctrineDBALQueryQueryBuilder",
               "file": "/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
               "function": "execute",
               "line": 287,
               "type": "->"
            },
            {
               "class": "OCDBQueryBuilderQueryBuilder",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
               "function": "execute",
               "line": 1340,
               "type": "->"
            },
            {
               "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
               "function": "getRows",
               "line": 1276,
               "type": "->"
            },
            {
               "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php",
               "function": "asItems",
               "line": 123,
               "type": "->"
            },
            {
               "class": "OCACirclesDbShareWrapperRequestBuilder",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php",
               "function": "getItemsFromRequest",
               "line": 339,
               "type": "->"
            },
            {
               "class": "OCACirclesDbShareWrapperRequest",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php",
               "function": "getSharedWith",
               "line": 180,
               "type": "->"
            },
            {
               "class": "OCACirclesServiceShareWrapperService",
               "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php",
               "function": "getSharedWith",
               "line": 557,
               "type": "->"
            },
            {
               "class": "OCACirclesShareByCircleProvider",
               "file": "/usr/local/www/nextcloud/lib/private/Share20/Manager.php",
               "function": "getSharedWith",
               "line": 1360,
               "type": "->"
            },
            {
               "class": "OCShare20Manager",
               "file": "/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php",
               "function": "getSharedWith",
               "line": 79,
               "type": "->"
            },
            {
               "class": "OCAFiles_SharingMountProvider",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php",
               "function": "getMountsForUser",
               "line": 118,
               "type": "->"
            },
            {
               "class": "OCFilesConfigMountProviderCollection",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
               "function": "addMountForUser",
               "line": 429,
               "type": "->"
            },
            {
               "class": "OCFilesFilesystem",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
               "function": "initMountPoints",
               "line": 354,
               "type": "::"
            },
            {
               "class": "OCFilesFilesystem",
               "file": "/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php",
               "function": "init",
               "line": 325,
               "type": "::"
            },
            {
               "class": "OC_Util",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php",
               "function": "setupFS",
               "line": 91,
               "type": "::"
            },
            {
               "class": "OCFilesMountManager",
               "file": "/usr/local/www/nextcloud/lib/private/Files/View.php",
               "function": "find",
               "line": 1385,
               "type": "->"
            },
            {
               "class": "OCFilesView",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Node/Root.php",
               "function": "getFileInfo",
               "line": 200,
               "type": "->"
            },
            {
               "class": "OCFilesNodeRoot",
               "function": "get",
               "type": "->"
            },
            {
               "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
               "function": "call_user_func_array",
               "line": 65
            },
            {
               "class": "OCFilesNodeLazyFolder",
               "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
               "function": "__call",
               "line": 142,
               "type": "->"
            },
            {
               "class": "OCFilesNodeLazyFolder",
               "file": "/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php",
               "function": "get",
               "line": 141,
               "type": "->"
            },
            {
               "class": "OCFilesAppDataAppData",
               "file": "/usr/local/www/nextcloud/core/Controller/JsController.php",
               "function": "getFolder",
               "line": 72,
               "type": "->"
            },
            {
               "class": "OCCoreControllerJsController",
               "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
               "function": "getJs",
               "line": 217,
               "type": "->"
            },
            {
               "class": "OCAppFrameworkHttpDispatcher",
               "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
               "function": "executeController",
               "line": 126,
               "type": "->"
            },
            {
               "class": "OCAppFrameworkHttpDispatcher",
               "file": "/usr/local/www/nextcloud/lib/private/AppFramework/App.php",
               "function": "dispatch",
               "line": 156,
               "type": "->"
            },
            {
               "class": "OCAppFrameworkApp",
               "file": "/usr/local/www/nextcloud/lib/private/Route/Router.php",
               "function": "main",
               "line": 301,
               "type": "::"
            },
            {
               "class": "OCRouteRouter",
               "file": "/usr/local/www/nextcloud/lib/base.php",
               "function": "match",
               "line": 1000,
               "type": "->"
            },
            {
               "class": "OC",
               "file": "/usr/local/www/nextcloud/index.php",
               "function": "handleRequest",
               "line": 36,
               "type": "::"
            }
         ]
      },
      "Trace": [
         {
            "class": "DoctrineDBALDriverAPIMySQLExceptionConverter",
            "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
            "function": "convert",
            "line": 1728,
            "type": "->"
         },
         {
            "class": "DoctrineDBALConnection",
            "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
            "function": "handleDriverException",
            "line": 1667,
            "type": "->"
         },
         {
            "class": "DoctrineDBALConnection",
            "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Connection.php",
            "function": "convertExceptionDuringQuery",
            "line": 1040,
            "type": "->"
         },
         {
            "class": "DoctrineDBALConnection",
            "file": "/usr/local/www/nextcloud/lib/private/DB/Connection.php",
            "function": "executeQuery",
            "line": 231,
            "type": "->"
         },
         {
            "class": "OCDBConnection",
            "file": "/usr/local/www/nextcloud/3rdparty/doctrine/dbal/src/Query/QueryBuilder.php",
            "function": "executeQuery",
            "line": 210,
            "type": "->"
         },
         {
            "class": "DoctrineDBALQueryQueryBuilder",
            "file": "/usr/local/www/nextcloud/lib/private/DB/QueryBuilder/QueryBuilder.php",
            "function": "execute",
            "line": 287,
            "type": "->"
         },
         {
            "class": "OCDBQueryBuilderQueryBuilder",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
            "function": "execute",
            "line": 1340,
            "type": "->"
         },
         {
            "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/vendor/artificial-owl/my-small-php-tools/lib/Db/Nextcloud/nc22/NC22ExtendedQueryBuilder.php",
            "function": "getRows",
            "line": 1276,
            "type": "->"
         },
         {
            "class": "ArtificialOwlMySmallPhpToolsDbNextcloudNc22NC22ExtendedQueryBuilder",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequestBuilder.php",
            "function": "asItems",
            "line": 123,
            "type": "->"
         },
         {
            "class": "OCACirclesDbShareWrapperRequestBuilder",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Db/ShareWrapperRequest.php",
            "function": "getItemsFromRequest",
            "line": 339,
            "type": "->"
         },
         {
            "class": "OCACirclesDbShareWrapperRequest",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/Service/ShareWrapperService.php",
            "function": "getSharedWith",
            "line": 180,
            "type": "->"
         },
         {
            "class": "OCACirclesServiceShareWrapperService",
            "file": "/usr/local/www/nextcloud/apps-pkg/circles/lib/ShareByCircleProvider.php",
            "function": "getSharedWith",
            "line": 557,
            "type": "->"
         },
         {
            "class": "OCACirclesShareByCircleProvider",
            "file": "/usr/local/www/nextcloud/lib/private/Share20/Manager.php",
            "function": "getSharedWith",
            "line": 1360,
            "type": "->"
         },
         {
            "class": "OCShare20Manager",
            "file": "/usr/local/www/nextcloud/apps-pkg/files_sharing/lib/MountProvider.php",
            "function": "getSharedWith",
            "line": 79,
            "type": "->"
         },
         {
            "class": "OCAFiles_SharingMountProvider",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Config/MountProviderCollection.php",
            "function": "getMountsForUser",
            "line": 118,
            "type": "->"
         },
         {
            "class": "OCFilesConfigMountProviderCollection",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
            "function": "addMountForUser",
            "line": 429,
            "type": "->"
         },
         {
            "class": "OCFilesFilesystem",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Filesystem.php",
            "function": "initMountPoints",
            "line": 354,
            "type": "::"
         },
         {
            "class": "OCFilesFilesystem",
            "file": "/usr/local/www/nextcloud/lib/private/legacy/OC_Util.php",
            "function": "init",
            "line": 325,
            "type": "::"
         },
         {
            "class": "OC_Util",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Mount/Manager.php",
            "function": "setupFS",
            "line": 91,
            "type": "::"
         },
         {
            "class": "OCFilesMountManager",
            "file": "/usr/local/www/nextcloud/lib/private/Files/View.php",
            "function": "find",
            "line": 1385,
            "type": "->"
         },
         {
            "class": "OCFilesiew",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Node/Root.php",
            "function": "getFileInfo",
            "line": 200,
            "type": "->"
         },
         {
            "class": "OCFilesNodeRoot",
            "function": "get",
            "type": "->"
         },
         {
            "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
            "function": "call_user_func_array",
            "line": 65
         },
         {
            "class": "OCFilesNodeLazyFolder",
            "file": "/usr/local/www/nextcloud/lib/private/Files/Node/LazyFolder.php",
            "function": "__call",
            "line": 142,
            "type": "->"
         },
         {
            "class": "OCFilesNodeLazyFolder",
            "file": "/usr/local/www/nextcloud/lib/private/Files/AppData/AppData.php",
            "function": "get",
            "line": 141,
            "type": "->"
         },
         {
            "class": "OCFilesAppDataAppData",
            "file": "/usr/local/www/nextcloud/core/Controller/JsController.php",
            "function": "getFolder",
            "line": 72,
            "type": "->"
         },
         {
            "class": "OCCoreControllerJsController",
            "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
            "function": "getJs",
            "line": 217,
            "type": "->"
         },
         {
            "class": "OCAppFrameworkHttpDispatcher",
            "file": "/usr/local/www/nextcloud/lib/private/AppFramework/Http/Dispatcher.php",
            "function": "executeController",
            "line": 126,
            "type": "->"
         },
         {
            "class": "OCAppFrameworkHttpDispatcher",
            "file": "/usr/local/www/nextcloud/lib/private/AppFramework/App.php",
            "function": "dispatch",
            "line": 156,
            "type": "->"
         },
         {
            "class": "OCAppFrameworkApp",
            "file": "/usr/local/www/nextcloud/lib/private/Route/Router.php",
            "function": "main",
            "line": 301,
            "type": "::"
         },
         {
            "class": "OCRouteRouter",
            "file": "/usr/local/www/nextcloud/lib/base.php",
            "function": "match",
            "line": 1000,
            "type": "->"
         },
         {
            "class": "OC",
            "file": "/usr/local/www/nextcloud/index.php",
            "function": "handleRequest",
            "line": 36,
            "type": "::"
         }
      ]
   },
   "level": 3,
   "message": "An exception occurred while executing a query: SQLSTATE[HY001]: Memory allocation error: 1038 Out of sort memory, consider increasing server sort buffer size",
   "method": "GET",
   "remoteAddr": "10.1.1.162",
   "reqId": "CcAqyyO7W4HFRJ4LHqnd",
   "time": "2022-03-06T05:57:59+00:00",
   "url": "/js/core/merged-template-prepend.js?v=0e2e1ef6-0",
   "user": "ncadmin",
   "userAgent": "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36",
   "version": "22.1.1.2"
}

Better? :grin:

This is actually some best practice shit, you see.

With such a log, it’s possible for every generic monitoring solution to parse the log messages and show them in your centralised monitoring solution. That’s what DevOps do, nowadays.

If the software creating these log messages is top notch, there will also be an option to turn off the advanced messages as seen here and change them to pleb mode, a.k.a. human readable logging messages from yesteryear. :wink: :laughing:

I’m guilty of the same sin. Well, it’s one 4GB model, but still. It’s bad to keep stuff like this laying around. It’s so amazing, it must be used. :grinning_face_with_smiling_eyes:

That is guaranteed. Straight up easier, not only because the network stuff is more permissive, but also due to amount of resources. Every newbie to expert has already voiced their opinion on what happens on Ubuntu or Debian, online. So, you will most likely always find a solution to some issue or at least be shown the right path to go, to reach the solution on your own.

Depends on your use case. If it’s only you with normal every day usage, it should be fine. Except the network bandwidth might become a bottleneck, because of PiHole.

I never used that in the first place, because I don’t like the concept of all my outbound networking going through that little thing. Always had the anticipation, it’d be like pushing an elephant through a door.

Not a fan of their stuff, but Debian as a base is always solid.

Don’t forget about my favourite:

Just needed it today on Hyper-V to do some network debugging. Works well, not only on SBCs.

You’ve been riding that BSD train for too many years, Bullseye is not bleeding edge, at all. It’s the stable version of Debian. In what world is that bleeding edge?
You need to get off that BSD stability perspective, as you just said yourself in the beginning of your post:

So, you don’t need an oldstable Debian version, to be extra safe, in terms of stability.

Nextcloud is super popular. You can get a lot of resources on that, even if you don’t do only clicky shit.

That said…

Those already switched to Linux, since it became available, there, as well. :laughing:


P.S.:

Please, don’t use the block quote prefix > for code. I had to fix your log message JSON manually, to be able to convert it to the pretty view. Always use these guys: “```” :smile:

1 Like

You beat me - I’m nearly “there” now :smiley: (after parsing the xml logging)

I will say - it was NOWHERE near this difficult last time I tried it as a plugin on my FreeNAS (around 2016 or 2017)…

P.S.

I actually tried with the “`” start and end, and it looked just as ugly either way… Let me go back and edit it and see if it improves…

P.P.S.
Okay - still doesn’t get as pretty as your formatting with “```” start and end… yours even knows it’s JSON…

P.P.S.
Nope… still don’t get it :smiley:

1 Like

In the past I’ve opted for Armbian on non Pi hardware, still running 16.04 on my OrangePi 2E+ (my headless transmission-daemon torrent server) - it just “works” and has been for 3 or more years, no fuss… rock solid… installed on eMMC - torrents go to an NFS share on my NAS.

I might check out DietPi again one of these days seeings how they now have a 64 bit version for the Pi3 / 4 (last time I looked they still only did 32 bit).

1 Like

It is for TVHeadend, even Buster is too bleeding edge for TVHeadend - I have to run it on Stretch…

I first tried it on Buster - couldn’t get it to work… Then read the forums, and, sure, “don’t run this on buster, use Jessie or Stretch”… Things may have changed, but running it on Stretch (Debian 9) on a Pi3 works for me - so - why change?

Same deal for Armbian running on my OrangePi +2E running headless for transmission-daemon - it’s running Armbian 16.04.x (i.e. Ubuntu 16)… PITA - 'cause one of the repos Armbian used no longer exists (i.e. Armbian themselves, took Xenial out!)… DietPi don’t list any OrangePi boards…

But anyway - so what - I don’t care… I don’t “need” updates for this “trivial thing”… But if it ever comes to me needing some other software on there - that I can install via dpkg and DEB file - I’ll have to bite the bullet and wipe it… Armbian Xenial came with a script to copy itself to the eMMC storage… Hope 22.04 (Armbian Bullseye) does too…

I’m downloading a torrent of Armbian 22.04 (headless Bullseye) now for that eventuality :smiley: - using transmission daemon!


My FreeBSD NextCloud jail got a new IP address this morning, even though I set a fixed DHCP lease on my router! Doh! Anyway - now it’s running on my FreeNAS okay - I stopped it and set it to fixed IP address… So far so good with NextCloud… Just about to see if I can punch a hole in my Router/Firewall to allow ingress from the wild intertubes, so I can use it from my phone from outside my LAN… Hmmm - I can’t seem to find that anywhere - then I just remembered - it’s port 80! Doh! I might have to set that to something else on the outside - along with 22, and 443, port 80 will regularly get scanned by chinese bots… Hmmm… I’m thinking I’m not gonna do that after all… Damn… Might have to setup fail2ban to also block multiple attempts / scans on whatever port I decided on…

I’m thinking the wrong way - if I want this - I should make my Pi the NextCloud “centre” (source of truth) - and forward some other arbitrary port from external to port 80 (I assume NextCloud default is to use NGinx?) on the Pi - and also setup fail2ban to also monitor port 80 and ban IP addresses…

Then I can use write my NextCloud files to my NAS over NFS… probably simpler than running a NextCloud jail on my FreeNAS…


Also - I noticed Ankush Das wrote an ItsFoss article about NextCloud and Rocket.Chat (and replacing Office 365) - after this post - to the ItsFoss website.


Update : not going there : i.e. my Pi4 is running PiHole, OpenVPN, fail2ban, and then also my NextCloud server?

PiHole uses lighttpd, and NextCloud advise against using this for NextCloud… And I’m not going to have two things in contention for doing http…

I guess another option might be to dockerify (containerise) it - but I can’t be arsed - sounds like too much hard work…

I’ll stick with Resilio Sync, does what I need, and bizarrely (to me anyway) it seems FAR simpler to setup…

This is one reason why I usually do not use one-click easy solutions. Too many projects, especially the ones trying to be “easy”, always have the arrogance to assume, that they are the only thing that will ever run on that server. It’s like the arrogance of server apps, where every server app wants to run on port 8080, 80 or 3000 by default.
Did you ever think, that I already have a server running?! Maybe?! :expressionless:

Same with stuff like the reverse proxy. “Oh, just use lighttpd, it’s easier!!”. No, it’s not easier. I use NGINX for everything.

Literally the same thing with databases. “Oh, just use MySQL (MariaDB). It’s so much easier and better!”. NO! I use PostgreSQL for everything that needs a SQL database, even if that takes more work, because in the end it will save trouble with different backends fighting each other… (Bookstack is the only software I run with MySQL; it simply does not work with PostgreSQL, at all. :roll_eyes:)

You could circumvent it, like that, yes. However, if I were you, I would’ve set up PiHole to run with NGINX to begin with and I don’t know if I would’ve changed that after the fact, so I feel your situation.

On the other hand, depending on your scenario, it really depends on your goals. If it’s an important server, you want to keep expanding and improving, then it might be worth the trouble to get rid off lighttpd for the sake of having something like NGINX, which is pretty much compatible with any server you can imagine.

Additionally, dockerising apps is actually very helpful. If you plan to use a server app more than once and even want to set it up on several servers, I highly recommend dockerising it. Iif the app is not some underground nobody, it will most likely already have a ready to apply Docker image, anyway, leaving you only with setting up a docker-compose file, which you can edit within 10 minutes and it just takes a docker-compose up -d to get the whole server stack running.
Once you get the gist, it’s easy.

At first, if you just want to quickly get something running, Docker might seem a bit cumbersome. But it’s honestly a super helpful tool, if you keep re-installing the same server on different systems or on the same server, after a wipe, for example.
It’s especially helpful, if you have not used it for a year or two and then come back to it. No problem, just do one docker-compose up -d and you’re done. However, with traditional server setups, you have to repeat the work from two years ago and you barely remember how that went, anyway, leading you to discovering the same issues you had two years ago and having to, again, look them up, because you cannot remember what the issue was two years ago.
Using Docker with docker-compose mostly fixes such issues. Sure, it might not always go without issues after two years of inactivity, but it certainly is much less error prone than doing the whole setup process again, after two years. And then, in another two years, again…

Due to those reasons, I am a heavy Docker user myself. I also created some Docker images from scratch.

It’s not hard, if you get used to it. It just might get tiresome after a while, if you are constantly creating Docker images and docker-compose.yml files. It’s usually a lot of work which requires little brain activity. But in the long run, it’s still much less work and less stressful.
It’s about the long-term benefits.


P.S.:

You can solve your bleeding edge Bullseye/Buster problem with Docker. Just pull the newest Debian inside that and use what is missing in the old Debian. Ideally, the opposite would be possible.
For example, if you could put TVHeadend in its own Docker image with BusterStretch (can’t believe you need Stretch…), you wouldn’t have to be arsed to run such an old distribution for the whole server.

I did not find any Dockerfile here, so you might need to create the image yourself.
However, if that would get your system off Buster or even Stretch, that would be a big plus.

1 Like

I have heard of Rocket Chat and but never used it, but Its indeed a good open source alternative to Slack and many other tools. In fact I have recommended this into someone in the past from the community.