Are you both @AartJansen and @genies305 ??
Shane Cooke
Posts
-
backup fails -
backup fails@genies305 So, what did you do?
-
Best privacy chat apps@jdaviescoates I'm just using the terms that were in the post. "A single Bitcoin transaction...", "iPhone ... process more transactions". Both transactions are on the blockchain. Perhaps the first statement was trying to say something more like "ALL the computers connected to the blockchain when a transaction occurs use more energy than...". The first statement sounds like an exaggeration and frankly won't sway most away from using Bitcoin (well, any phrase always has the potential to sway some number of people any which way). It wouldn't be accurate to say that ALL computers connected to the blockchain are essential for any given transaction to process, but that is what is implied. It isn't true. It certainly is fine and good for people to make others aware that there are costs associated with Bitcoin, but I'd avoid fearmongering.
I thought I'd brush up my info before posting, and read https://river.com/learn/how-does-a-bitcoin-transaction-work/. So, yeah, I can't confirm how much energy a given mining NODE uses to mine a specific order, but it still looks to me like fearmongering when the costs are talked about, generally.
-
Best privacy chat apps@jdaviescoates said in Best privacy chat apps:
A single Bitcoin transaction uses more energy than an average U.S. household uses in 2 months!
....
A 10-year old iPhone could process more transactions per second than the entirety of the Bitcoin network it's so insanely slow.
These two statements don't seem to reconcile. If I combine them, then "A 10-year old iPhone uses more energy than several average US households do in 2 months to process more transactions than the entirety of the Bitcoin network". If this were true, that 10-year old iPhone would rack up HUGE electricity bills for whoever has it plugged in at home (at least 2 months x # of transactions).
-
Now try this one...I ain't clicking on that without a little more description!
-
Links sent to users on my instance of Cloudron is invalidI'm impressed @fbartels! Sincerely! Your profile should be more like this:
-
How do we move our local comics onto the Kavita server?I've found that using something like Cyberduck lets me login into the server, and then easily navigate to the desired folder even in the Docker hierarchy. So, I upload straight to the folder Kavita uses. It looks something like: /home/yellowtent/appsdata/long-set-of-characters/data/data, etc.
-
Fantastic changelog from Kavita!Ah, well, my Libraries weren't loading so no such option was available. Yikes.
-
Fantastic changelog from Kavita!Yep, I just checked and upgrade... is a forced library scan just clicking on "/admin/dashboard#libraries"? Or is it a CLI command?
-
Fantastic changelog from Kavita!Yes, interesting read, and it's good of them to include steps for upgrading/transitioning. When will this hit Cloudron?
-
Permission is hereby granted@jdaviescoates Did you actually write those lyrics?? If so, VERY impressive. Or did the AI come up with the lyrics?
-
Permission is hereby granted@luckow said in Permission is hereby granted:
Can you believe I was initially wondering where to find the lyrics... then I read the text. Hilarious!
-
Latest attempt - why oh why does this just not work????@jdaviescoates I might just move on over to Scaleway too then. Thanks.
-
Latest attempt - why oh why does this just not work????Hi everyone,
I thought I'd take another stab at getting my Peertube to use Object Storage, using a Cloudron-installed Minio instance (on a different server). Here is what I have in my production.yaml:object_storage: enabled: true driver: 'minio' pathstyle: 'true' endpoint: 'https://minioapi.server.com' (it used to be minio-api... but I removed the - like another poster did, and then at least the upload part would start. Before, not always, as I messed with different settings.) region: 'ca-central-1' upload_acl: # Set this ACL on each uploaded object of public/unlisted videos public: 'public' # Set this ACL on each uploaded object of private/internal videos # PeerTube can proxify requests to private objects so your users can access them private: 'private' protocol: 'HTTPS' max_upload_part: '2GB' web_videos: bucketName: 'vids' prefix: 'web/' # Use the same bucket as for web videos but with a different prefix streaming_playlists: bucketName: 'vids' prefix: 'streaming/' credentials: access_key_id: 'longkey' secret_access_key: 'longerkey'
ar 31 16:31:09 [example.com:443] 2024-03-31 14:31:09.337 info: Creating external storage move job for video 1b4a83e8-c474-4b28-bcf2-4ccacadc15e1. Mar 31 16:31:09 [example.com:443] 2024-03-31 14:31:09.352 info: Moving video 1b4a83e8-c474-4b28-bcf2-4ccacadc15e1 to object storage in job 13. Mar 31 16:31:09 [example.com:443] 2024-03-31 14:31:09.957 info: Initialized S3 client https://minioapi.server.com with region ca-central-1. Mar 31 16:31:09 [example.com:443] 2024-03-31 14:31:09.968 info: Processing transcoding job builder in job af6ed39e-1e1f-40e4-af70-20b84f2c2a1d. Mar 31 16:31:10 172.18.0.1 - - [31/Mar/2024:14:31:10 +0000] "GET / HTTP/1.1" 200 6492 "-" "Mozilla (CloudronHealth)" Mar 31 16:31:10 [example.com:443] 2024-03-31 14:31:10.282 info: 172.18.0.1 - - [31/Mar/2024:14:31:10 +0000] "GET / HTTP/1.0" 200 18062 "-" "Mozilla (CloudronHealth)" Mar 31 16:31:12 [example.com:443] 2024-03-31 14:31:12.270 error: Cannot move video https://example.com/videos/watch/1b4a83e8-c474-4b28-bcf2-4ccacadc15e1 storage. { Mar 31 16:31:12 "err": { Mar 31 16:31:12 "stack": "CredentialsProviderError: Could not load credentials from any providers\n at /app/code/server/node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js:13:11\n at /app/code/server/node_modules/@smithy/property-provider/dist-cjs/chain.js:12:39\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async coalesceProvider (/app/code/server/node_modules/@smithy/property-provider/dist-cjs/memoize.js:14:24)\n at async SignatureV4.credentialProvider (/app/code/server/node_modules/@smithy/property-provider/dist-cjs/memoize.js:33:24)\n at async SignatureV4.signRequest (/app/code/server/node_modules/@smithy/signature-v4/dist-cjs/SignatureV4.js:106:29)\n at async /app/code/server/node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js:16:18\n at async /app/code/server/node_modules/@smithy/middleware-retry/dist-cjs/retryMiddleware.js:27:46\n at async /app/code/server/node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js:57:20\n at async /app/code/server/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-endpoint-middleware.js:14:24\n at async /app/code/server/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-middleware.js:9:20\n at async /app/code/server/node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js:7:26\n at async Promise.all (index 0)\n at async Upload.__uploadUsingPut (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:66:26)\n at async Upload.__doConcurrentUpload (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:128:28)\n at async Promise.all (index 0)\n at async Upload.__doMultipartUpload (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:211:9)\n at async Upload.done (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:39:16)\n at async uploadToStorage (file:///app/code/server/dist/core/lib/object-storage/shared/object-storage-helpers.js:152:23)\n at async moveWebVideoFiles (file:///app/code/server/dist/core/lib/job-queue/handlers/move-to-object-storage.js:39:25)\n at async moveToJob (file:///app/code/server/dist/core/lib/job-queue/handlers/shared/move-video.js:19:13)\n at async Object.processMoveToObjectStorage [as move-to-object-storage] (file:///app/code/server/dist/core/lib/job-queue/handlers/move-to-object-storage.js:16:5)\n at async Object.wrapPromiseFun (file:///app/code/server/dist/core/lib/plugins/hooks.js:8:24)\n at async Worker.processJob (/app/code/server/node_modules/bullmq/dist/cjs/classes/worker.js:350:28)\n at async Worker.retryIfFailed (/app/code/server/node_modules/bullmq/dist/cjs/classes/worker.js:535:24)", Mar 31 16:31:12 "message": "Could not load credentials from any providers", Mar 31 16:31:12 "tryNextLink": false, Mar 31 16:31:12 "name": "CredentialsProviderError", Mar 31 16:31:12 "$metadata": { Mar 31 16:31:12 "attempts": 1, Mar 31 16:31:12 "totalRetryDelay": 0 Mar 31 16:31:12 } Mar 31 16:31:12 } Mar 31 16:31:12 } Mar 31 16:31:12 [example.com:443] 2024-03-31 14:31:12.287 error: Cannot execute job 13 in queue move-to-object-storage. { Mar 31 16:31:12 "payload": { Mar 31 16:31:12 "videoUUID": "1b4a83e8-c474-4b28-bcf2-4ccacadc15e1", Mar 31 16:31:12 "isNewVideo": true, Mar 31 16:31:12 "previousVideoState": 2 Mar 31 16:31:12 }, Mar 31 16:31:12 "err": { Mar 31 16:31:12 "stack": "CredentialsProviderError: Could not load credentials from any providers\n at /app/code/server/node_modules/@aws-sdk/credential-provider-node/dist-cjs/defaultProvider.js:13:11\n at /app/code/server/node_modules/@smithy/property-provider/dist-cjs/chain.js:12:39\n at process.processTicksAndRejections (node:internal/process/task_queues:95:5)\n at async coalesceProvider (/app/code/server/node_modules/@smithy/property-provider/dist-cjs/memoize.js:14:24)\n at async SignatureV4.credentialProvider (/app/code/server/node_modules/@smithy/property-provider/dist-cjs/memoize.js:33:24)\n at async SignatureV4.signRequest (/app/code/server/node_modules/@smithy/signature-v4/dist-cjs/SignatureV4.js:106:29)\n at async /app/code/server/node_modules/@aws-sdk/middleware-signing/dist-cjs/awsAuthMiddleware.js:16:18\n at async /app/code/server/node_modules/@smithy/middleware-retry/dist-cjs/retryMiddleware.js:27:46\n at async /app/code/server/node_modules/@aws-sdk/middleware-flexible-checksums/dist-cjs/flexibleChecksumsMiddleware.js:57:20\n at async /app/code/server/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-endpoint-middleware.js:14:24\n at async /app/code/server/node_modules/@aws-sdk/middleware-sdk-s3/dist-cjs/region-redirect-middleware.js:9:20\n at async /app/code/server/node_modules/@aws-sdk/middleware-logger/dist-cjs/loggerMiddleware.js:7:26\n at async Promise.all (index 0)\n at async Upload.__uploadUsingPut (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:66:26)\n at async Upload.__doConcurrentUpload (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:128:28)\n at async Promise.all (index 0)\n at async Upload.__doMultipartUpload (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:211:9)\n at async Upload.done (/app/code/server/node_modules/@aws-sdk/lib-storage/dist-cjs/Upload.js:39:16)\n at async uploadToStorage (file:///app/code/server/dist/core/lib/object-storage/shared/object-storage-helpers.js:152:23)\n at async moveWebVideoFiles (file:///app/code/server/dist/core/lib/job-queue/handlers/move-to-object-storage.js:39:25)\n at async moveToJob (file:///app/code/server/dist/core/lib/job-queue/handlers/shared/move-video.js:19:13)\n at async Object.processMoveToObjectStorage [as move-to-object-storage] (file:///app/code/server/dist/core/lib/job-queue/handlers/move-to-object-storage.js:16:5)\n at async Object.wrapPromiseFun (file:///app/code/server/dist/core/lib/plugins/hooks.js:8:24)\n at async Worker.processJob (/app/code/server/node_modules/bullmq/dist/cjs/classes/worker.js:350:28)\n at async Worker.retryIfFailed (/app/code/server/node_modules/bullmq/dist/cjs/classes/worker.js:535:24)", Mar 31 16:31:12 "message": "Could not load credentials from any providers", Mar 31 16:31:12 "tryNextLink": false, Mar 31 16:31:12 "name": "CredentialsProviderError", Mar 31 16:31:12 "$metadata": { Mar 31 16:31:12 "attempts": 1, Mar 31 16:31:12 "totalRetryDelay": 0 Mar 31 16:31:12 }
The main problem seems to be
CredentialsProviderError: Could not load credentials from any providers\n
Now, is this just because I don't have the exactly correct syntax? What would that be? What gets capitalized, what gets '', what gets indented and how many spaces? Or have I missed some settings on the bucket? It's public with read-write settings, and at least one user who is listed as having access. Or is it CORS??? I thought for sure this would work with a Cloudron-installed Minio.
If you DO have a working Cloudron-based Peertube successfully linked to a Minio instance, perhaps you could share your .env?
-
Nextcloud and local filesystem as Volumes@girish This worked. What I didn't understand was that /media/name_of_volume was a hard and fast location. The documentation had this line,
As a security measure, only host paths under /mnt, /media, /srv and /opt are allowed.
which I took to mean that if I used any of those four + the volume name, that that was the location for the Configuration option in Nextcloud. So presumably I could still make any Volume using any of those four, but in Nextcloud the Configuration will always be /media/name_of_volume? Even though it is "now" clearly obvious in the Cloudron Nextcloud dashboard, thatApps can access mounted volumes via /media/{volume name} directory. This data is not included in the app's backup.
I thought that the "/media" directory was there as an example, and that any of those four might be used, depending on how the Volume was added. But no, right there, clear as day, it says to use /media.For someone like myself that just isn't clear and obvious. In this screenshot of adding a Volume, would it be helpful to add a line like, "These filesystem Volumes will then be accessible only at /media/name_of_volume." ? Or are there too many variables; other apps would need this specificity?
Or perhaps in the image shared above:
Use the directory /media/{volume name}, regardless of its host path, as the path for Apps that will access mounted volumes. This data is not included in the app's backup.
I don't know.... now that I understand /media is how Cloudron manages Volumes, at least filesystem Volumes, it kind of makes sense. Thank you everyone for pitching in. The Volume did load and I can see the contents. Phew.
-
Nextcloud and local filesystem as VolumesYes, Cloudron itself "works", but when I try to add the filesystem location using the External plugin within Nextcloud, I get this error from the Cloudron Logs window for the Nextcloud app:
[no timestamp] storage path does not exist \"/srv/cloudron/\"","userAgent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/123.0.0.0 Safari/537.36","version":"28.0.4.1","exception":{"Exception":"OCP\\Files\\StorageNotAvailableException","Message":"Local storage path does not exist \"/srv/cloudron/\"","Code":1,"Trace":[{"file":"/app/data/apps/files_external/lib/MountConfig.php","line":128,"function":"__construct","class":"OC\\Files\\Storage\\Local","type":"->"},{"file":"/app/data/apps/files_external/lib/Controller/StoragesController.php","line":246,"function":"getBackendStatus","class":"OCA\\Files_External\\MountConfig","type":"::","args":["*** sensitive parameters replaced ***"]},{"file":"/app/data/apps/files_external/lib/Controller/GlobalStoragesController.php","line":201,"function":"updateStorageStatus","class":"OCA\\Files_External\\Controller\\StoragesController","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":230,"function":"update","class":"OCA\\Files_External\\Controller\\GlobalStoragesController","type":"->","args":["*** sensitive parameters replaced ***"]},{"file":"/app/code/lib/private/AppFramework/Http/Dispatcher.php","line":137,"function":"executeController","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/app/code/lib/private/AppFramework/App.php","line":184,"function":"dispatch","class":"OC\\AppFramework\\Http\\Dispatcher","type":"->"},{"file":"/app/code/lib/private/Route/Router.php","line":315,"function":"main","class":"OC\\AppFramework\\App","type":"::"},{"file":"/app/code/lib/base.php","line":1069,"function":"match","class":"OC\\Route\\Router","type":"->"},{"file":"/app/code/index.php","line":39,"function":"handleRequest","class":"OC","type":"::"}],"File":"/app/code/lib/private/Files/Storage/Local.php","Line":106,"Hint":"Storage is temporarily not available","message":"Local storage path does not exist \"/srv/cloudron/\"","exception":{},"CustomMessage":"Local storage path does not exist \"/srv/cloudron/\""}}
So, Cloudron can add it and open it and use it. Just somehow Nextcloud isn't seeing it. I am thinking it has to do with Docker... Nextcloud's data directory is not / anything, since it is in a container, and for some reason it can't see outside of the container to recognize the "real" /. There must be some naming convention trick I'm missing.
And of course googling any combo of these terms gives either no or no-related results, or so many that seem related but aren't.
-
Nextcloud and local filesystem as VolumesThanks @Kubernetes . I tried googling that but didn't come up with enough.
I did find this line, "Mounting an existing server directory as 'external storage' on Nextcloud is currently not supported." at https://docs.cloudron.io/apps/nextcloud/. Looks like what I'm trying to do, at least the way I'm trying to do it, doesn't work.
-
Nextcloud and local filesystem as VolumesI want to use Nextcloud, but also make teh files I upload to it accessible to other apps on the Cloudron, and just in general. I don't want to have to upload to the Nextcloud folder inside the Docker container.
So I made a new directory at /srv/cloudron, chown'ed it to so that the owner and group are www-data, added it to Cloudron as a Volume of Type filesystem, and then added it as a Mount under Storage in the Nextcloud Cloudron dashboard.
I then activated the External Storage plugin... but it won't be added. Judging from the Logs, Nextcloud is looking for /srv/cloudron INSIDE the container, and not the VPS itself. So the question is...
How do I get Nextcloud to recognize the local filesystem Volume?? Do I need to make a ln -s from /srv/cloudron to the container???
Thanks!
NOTE: When I added /srv/cloudron as a Volume I chose simply Filesystem, not Filesystem (Mountpoint).
NOTE 2: I just tried redoing it using Filesystem (Mountpoint) and Nextcloud still can't load it, just a red arrow.
NOTE 3: I also tried changing the directory, /media/cloudron, but no luck.Figures. Nextcloud. What a headache.
-
Suggestions for partner app with Nextcloud?@avatar1024 Yeah, this sounds cool. So, on this new 1TB server all I have is Cloudron and the NC app installed. Do I need to make a Volume on the 1TB server?
Or do I need a separate VPS (believe it or not, I do! I won a Crunchbits server on LET)? So I could use the new smaller CB server (120GB) for the Cloudron install, and then reinstall the current 1TB server to just be a blank Ubuntu 22 server, and then use the 1Tb as the Volume for the moved Cloudron NC and other app... correct?