French, speaking English and Spanish.

  • 16 Posts
  • 47 Comments
Joined 4Y ago
cake
Cake day: Mar 11, 2021

help-circle
rss

I didn’t really care about the subreddit even before the API shitshow, as I find the place filled with toxic, elitist gatekeepers.

As I was just starting to self-host and was merely a modest hobbyist, I only encountered hate and downvotes there.

In short, I don’t miss that place.

That said, I find the community here much more helpful and positive. It could use a bit more engagement, and we should all post and share more—myself included. But overall, I like it.

/r/selfhosted remains just an entry in my RSS feed to ensure I don’t miss anything of interest; mostly, I just read post titles.

So let them have their primary space over there.


I’m desperate to find a REAL alternative to wetransfer. One that sends an e-mail to the recipient with a link when the file is ready to download.



Guide: How to run MediaCMS with Docker
This is a followup to [my previous post](https://lemmy.ml/post/14714883). If you want to bind volumes outside of Docker, this is what you need to do. There was a huge permission and volume mapping problem. I mention github issues that helped me [here](https://github.com/mediacms-io/mediacms/issues/1005#issuecomment-2068177299). I hope that will help noobs and insecure people like me. ------------ ```bash cd /srv/path/Files ``` ```bash git clone https://github.com/mediacms-io/mediacms ``` ```bash cd /srv/path/Files/mediacms ``` ``` mkdir postgres_data \ && chmod -R 755 postgres_data ``` ``` nano docker-compose.yaml ``` ```yaml version: "3" services: redis: image: "redis:alpine" restart: always healthcheck: test: ["CMD", "redis-cli","ping"] interval: 30s timeout: 10s retries: 3 migrations: image: mediacms/mediacms:latest volumes: - /srv/path/Files/mediacms/deploy:/home/mediacms.io/mediacms/deploy - /srv/path/Files/mediacms/logs:/home/mediacms.io/mediacms/logs - /srv/path/Files/mediacms/media_files:/home/mediacms.io/mediacms/media_files - /srv/path/Files/mediacms/cms/settings.py:/home/mediacms.io/mediacms/cms/settings.py environment: ENABLE_UWSGI: 'no' ENABLE_NGINX: 'no' ENABLE_CELERY_SHORT: 'no' ENABLE_CELERY_LONG: 'no' ENABLE_CELERY_BEAT: 'no' ADMIN_USER: 'admin' ADMIN_EMAIL: 'admin@localhost' ADMIN_PASSWORD: 'complicatedpassword' restart: on-failure depends_on: redis: condition: service_healthy web: image: mediacms/mediacms:latest deploy: replicas: 1 ports: - "8870:80" #whatever:80 volumes: - /srv/path/Files/mediacms/deploy:/home/mediacms.io/mediacms/deploy - /srv/path/Files/mediacms/logs:/home/mediacms.io/mediacms/logs - /srv/path/Files/mediacms/media_files:/home/mediacms.io/mediacms/media_files - /srv/path/Files/mediacms/cms/settings.py:/home/mediacms.io/mediacms/cms/settings.py environment: # ENABLE_UWSGI: 'no' #keep commented ENABLE_CELERY_BEAT: 'no' ENABLE_CELERY_SHORT: 'no' ENABLE_CELERY_LONG: 'no' ENABLE_MIGRATIONS: 'no' db: image: postgres:15.2-alpine volumes: - /srv/path/Files/mediacms/postgres_data:/var/lib/postgresql/data/ restart: always environment: POSTGRES_USER: mediacms POSTGRES_PASSWORD: mediacms POSTGRES_DB: mediacms TZ: Europe/Paris healthcheck: test: ["CMD-SHELL", "pg_isready", "--host=db", "--dbname=$POSTGRES_DB", "--username=$POSTGRES_USER"] interval: 30s timeout: 10s retries: 5 celery_beat: image: mediacms/mediacms:latest volumes: - /srv/path/Files/mediacms/deploy:/home/mediacms.io/mediacms/deploy - /srv/path/Files/mediacms/logs:/home/mediacms.io/mediacms/logs - /srv/path/Files/mediacms/media_files:/home/mediacms.io/mediacms/media_files - /srv/path/Files/mediacms/cms/settings.py:/home/mediacms.io/mediacms/cms/settings.py environment: ENABLE_UWSGI: 'no' ENABLE_NGINX: 'no' ENABLE_CELERY_SHORT: 'no' ENABLE_CELERY_LONG: 'no' ENABLE_MIGRATIONS: 'no' celery_worker: image: mediacms/mediacms:latest deploy: replicas: 1 volumes: - /srv/path/Files/mediacms/deploy:/home/mediacms.io/mediacms/deploy - /srv/path/Files/mediacms/logs:/home/mediacms.io/mediacms/logs - /srv/path/Files/mediacms/media_files:/home/mediacms.io/mediacms/media_files - /srv/path/Files/mediacms/cms/settings.py:/home/mediacms.io/mediacms/cms/settings.py environment: ENABLE_UWSGI: 'no' ENABLE_NGINX: 'no' ENABLE_CELERY_BEAT: 'no' ENABLE_MIGRATIONS: 'no' depends_on: - migrations ``` ```bash docker-compose up -d ``` CSS will probably be missing because reasons, so bash into `web` container ```bash docker exec -it mediacms_web_1 /bin/bash ``` Then ```bash python manage.py collectstatic ``` No need to reboot
fedilink

Okay so I tried again, but only changing port. It worked. I really wish I could figure out this permission issues and bond volumes. Thanks again for your help :)



I manually set it to 777 several times for testing purposes, but apparently, it switches back to 700


Thanks for trying. The issue you mentioned helped me before to have it spinning. I feel like I’ve tried everything mentioned in the docs as well as what I am aware of and capable of 😅


Thanks for your answer. I’m not sure what to look for in the browser’s logs but here it is.

I have logs for all containers here:

celery_beat

celery_worker

db. A lot of errors here, but I think I recall reading somewhere in the issues that it doesn’t matter. I’d have to double check that.

redis

web

I have one container exited, mediacms_migrations, but I noticed it stopped right after the stack’s setup and thought it would be used only for startup. Here are the logs for it


Trouble running MediaCMS: “Server Error (500)” on logging in.
Hey there! I'm a self-hosting enthusiast, and I'm learning the hard way, so I appreciate your patience as I navigate through this. I've been on the hunt for a video hosting solution that offers categories and tags, and I've heard great things about [MediaCMS](https://github.com/mediacms-io/mediacms). It seems like the perfect fit for what I need. After some trial and error, I finally got it up and running. The only hiccup I'm facing now is with logging into the admin panel. I keep getting an error 500. I checked out some similar issues on github, but it doesn't seem to apply to my situation, and there isn't a solution posted. Plus, it looks like the developer is not very active on the issues. I was wondering if anyone else has encountered this problem before and might have some insights to share. Here's some additional info: I cloned the repository from https://github.com/mediacms-io/mediacms and made some edits to the docker-compse.yaml file to suit my preferences, mainly adjusting the volume paths. You can check it out [here](https://clip.steph.click/-5nPz6ektxy). The service takes a bit of time to start, but eventually it does and I can access the landing page. However, when I try to sign in, I just get a "Server Error (500)" message. I've checked the logs but haven't found anything useful. Has anyone who uses MediaCMS encountered this issue before? Can someone reproduce and help me clear this out? Thanks a lot for your assistance!
fedilink

was roaming the web to find something that could actually fit your request!

That is very nice of you !

Actually, I totally missed MediaCMS in my quest for a solution, so you opened my eyes. It has tags and categories so I think this is what I need.

I will try it next week when I get back home.

Thanks a lot for your help :)


Yes, I am talking about video content.

I don’t see a usecase for Zotero in my situation, but it’s good to know it exists and it might help others !

As someone else suggested, I will try MediaCMS. Looks like it fits my needs.

Thanks for your input :)


How to organize courses and tutorials ?
Hey there! So, I've accumulated a ton of courses and tutorials over the years - everything from photography to cooking to music mixing and mastering, DIY, gardening, you name it. I've been trying to keep everything organized with Jellyfin, but honestly, it's a bit of a hassle to navigate through all my content and find what I need. I'd love to find something with a user-friendly interface where I can easily sort, organize, and tag all my courses and videos. I've been searching high and low for a solution these past few days, but haven't had much luck. Any suggestions? Thanks in advance for your help!
fedilink

Great job ! Thanks for jour work :)


This is an awesome project. I’m suprised there is no docker support.


After being really desapointed by NC, I feel owncloud is much superior. No joke.

Like others already mentioned, seafile is a solid option too.


[SOLVED] Temporarily hosting on Oracle Free tier.
Solution : Don't be stupid. Open the proper ports. ------------------------------------------------------------- Hey there! So, I'm getting ready to move from places to places for the next six months and it's going to be a bit of a hassle. My servers will be offline until I find a permanent home, which is stressing me out because I rely on a bunch of services I host for my daily routine. So I've set up an Oracle free tier account so I can still access my favorite services while I'm in limbo. I'm using docker and Portainer to manage everything, and so far Serge (for the lolz) and Vikunja are up and running with no issues using the IP Oracle provided. But when I tried to set up Bookstack, Whoogle and Searxng, they installed fine but for some reason they won't open. I've checked the logs and there are no errors, I just keep getting a timeout message in my browser. I haven't tested any other services yet, but I'm stumped as to why these two won't cooperate. I'm just a casual hobbyist and not an expert, so if anyone could lend a hand, I'd really appreciate it. Thanks!
fedilink

Too many issues with Lychee. Any alternative ?
Hello there. First, I want to specify that I use [Lychee-Docker](https://github.com/LycheeOrg/Lychee-Docker) and that's the only experience I have with Lychee. I've been using it for some time to share family pics with family members and it's been great. However, with v5, I've noticed some issues that are making things a bit challenging. I appreciate some of the good ideas that came with the new update, but in my opinion, there are also quite a few bad decisions that have been made. For example: - Can't import photos / videos from server anymore. I sometimes used to drop files directly in a location of my server and then use the UI to import them. Convenient on mobile or with large number of files. - Can't upload large files ([LycheeOrg/Lychee#2207](https://github.com/LycheeOrg/Lychee/issues/2207), [LycheeOrg/Lychee#2129](https://github.com/LycheeOrg/Lychee/issues/2129)) - Can't remove single / several photos from an album anymore. You need to delete the album and re-upload - Can't obtain shorter link to a gallery anymore with the "share" button they removed a while back - The new "+" menu should have a background for legibility - There is a HUGE useless empty space at the top of galleries now - Had to tinker with config like adding `TRUSTED_PROXIES=*` to fix a thing and was told to keep it anyway but the reason why and how to properly do it are not documented - Had to temporarily fix my Nginx config but it seems like it has become a permanent fix, but it is not documented But at the same time I LOVE these options for public albums: - **Original**: Anonymous users can behold full-resolution photos. - **Hidden**: Anonymous users need a direct link to access this album. - **Downloadable**: Anonymous users can download this album. - **Password protected**: Anonymous users need a shared password to access this album. Actually, *those 4 options are all I need*. But I need the tool that provides them to work... They said "the team is so slow that we don't have anybody to review complex pull requests." That makes me sad. I wish I had the time to learn how to code and help out, but I can't. And even if I could, I'd probably end up building my own tool in the end. I am not looking for a google photos replacement. Immich is great but that is not what I want to use. I have tried several known alternatives but I'm curious to hear your thoughts on Lychee in its current state and if you have any suggestions for other tools that could serve a similar purpose.
fedilink

To give more information:

I’m a portainer user and wanted to try shotshare as is looks exactly like what I need :)

I followed these steps: sudo mkdir Shotshare and cd into this directory sudo touch .env database.sqlite sudo chown 82:82 .env database.sqlite

and then tried this docker-compose:

version: "3.3"
services:
  shotshare:
    ports:
      - 2000:2000
    environment:
      - HOST=:2000
      - ALLOW_REGISTRATION=false
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/shotshare_data:/app/storage
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/database.sqlite:/app/database/database.sqlite
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/.env:/app/.env
    restart: unless-stopped
    container_name: shotshare
    image: mdshack/shotshare:latest
networks: {}

I struggled a lot with ports.

I still didn’t get how ports are configured in the container, but a user tried to help me and now I get an error 500

Here’s my compose (path is OMV path)

version: "3.3"
services:
  shotshare:
    ports:
      - 2000:2000
    environment:
      - HOST=:2000
      - ALLOW_REGISTRATION=false
    volumes:
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/shotshare_data:/app/storage
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/database.sqlite:/app/database/database.sqlite
      - /srv/dev-disk-by-uuid-7fe66601-5ca0-4c09-bc13-a015025fe53a/Files/Shotshare/.env:/app/.env
    restart: unless-stopped
    container_name: shotshare
    image: mdshack/shotshare:latest
networks: {}

image

ERR | ts=1705936180.7673454 logger=http.log.access msg=handled request request={"remote_ip":"192.168.1.106","remote_port":"57659","client_ip":"192.168.1.106","proto":"HTTP/1.1","method":"GET","host":"192.168.1.104:2000","uri":"/","headers":{"Dnt":["1"],"Sec-Gpc":["1"],"Connection":["keep-alive"],"Upgrade-Insecure-Requests":["1"],"User-Agent":["Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:121.0) Gecko/20100101 Firefox/121.0"],"Accept":["text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8"],"Accept-Language":["en-US,en;q=0.5"],"Accept-Encoding":["gzip, deflate"],"Cookie":[]}} bytes_read=0 user_id= duration=0.168065318 size=651 status=500 resp_headers={"Status":["500 Internal Server Error"],"X-Powered-By":["PHP/8.3.1"],"Cache-Control":["no-cache, private"],"Content-Encoding":["gzip"],"Vary":["Accept-Encoding"],"Server":["Caddy"],"Date":["Mon, 22 Jan 2024 15:09:40 GMT"],"Content-Type":["text/html; charset=UTF-8"]} 

I can’t wrap my head around this


SOLVED. Has anyone installed Shotshare using docker-compose ?
Ok so the solution was this. Thank you @mouse@midwest.social `cd /home` `git clone https://github.com/mdshack/shotshare` `cd .../Files/` `sudo mkdir Shotshare` `cd .../Files/Shotshare` `sudo mkdir shotshare_data` `sudo touch .env database.sqlite` `cp -r /home/shotshare/storage/* .../Files/Shotshare/shotshare_data` `chown 82:82 -R .../Files/Shotshare/` ``` version: "3.3" services: shotshare: ports: - 2000:80 environment: - HOST=:80 - ALLOW_REGISTRATION=false volumes: - .../Files/Shotshare/shotshare_data:/app/storage - .../Files/Shotshare/database.sqlite:/app/database/database.sqlite - .../Files/Shotshare/.env:/app/.env restart: unless-stopped container_name: shotshare image: mdshack/shotshare:latest networks: {} ``` --------------- Hello everyone. I am deeply struggling to install [shotshare](https://github.com/mdshack/shotshare) on my server using docker-compose. I followed the instructions and I've been [talking with someone](https://github.com/mdshack/shotshare/issues/27) (from their team I guess) for 2 weeks without finding a solution. Does anyone have a working docker-compose to share so I can compare it and understand ?
fedilink

Of course, Syncthing is a fantastic tool, but it’s important to note that it serves a different purpose compared to platforms like NC or OC. What I’m really in need of is a collaborative cloud system that allows me to easily work together with other people :)


Wow, you did spend quite some time trying to make it properly work.

As someone that looks to be educated on the subject, what did you end up using as a replacement to NC ?


Synology was an option at some point in my journey, but yeah, I’m a FOSS enthusiast :)


I use a wireguard tunnel ;) Thank you for the updates on the vulnerability and from Kiteworks :)


I remember trying it but it still felt sluggish. I tried uninstalling and reinstalling and it just kept failing and I didn’t want to wipe anything just for Nextcloud.


I’ve tried ownCloud.
Hey there! I just wanted to share a bit about my experience as a hobbyist and self-hosting enthusiast. While I may not be the most educated on the topic, I've been able to self-host my favorite services to avoid relying on big companies like Google and Amazon. A few years ago, I started my self-hosting journey with Nextcloud, and it completely blew my mind. Finally, I didn't have to rely on Google Drive anymore! However, I quickly realized that using a Raspberry Pi made things a bit sluggish. I tried upgrading to a more powerful machine. Still slow. I then tried with an i5-4460, but it was still slow and buggy. I even tried an i3-10100, and it was still a bit of a pain to use. It seems like many others feel the same frustration, so I know I'm not alone. I often wonder how some other people claim they have no issues with Nextcloud, but hey, good for them! Because of the tinkering it seems to need, I feel like I don't have enough time and knowledge to make Nextcloud work as smoothly as I'd like, which defeats the purpose of self-hosting it. That's why I've been exploring other options. I gave Seafile a shot, but couldn't figure out how to solve a "CSRF verification failed" error. Projectsend and Xbackbone are great, but they don't quite match what I'm looking for. I also tried Cloudreve, but I wasn't a fan of its sorting philosophy. I did find Picoshare, which I stuck with, but for a totally different purpose. Then, I tried ownCloud for the first time. Wow, it was fast! Uploading an 8GB folder took just 3 minutes compared to the 25 minutes it took with Nextcloud. Plus, everything was lightning quick on the same machine. I really loved using it. Unfortunately, there's currently a [vulnerability affecting it](https://arstechnica.com/security/2023/11/owncloud-vulnerability-with-a-maximum-10-severity-rating-comes-under-mass-exploitation/), which led me to uninstall it. I also gave OCIS a try, and it felt even faster. The interface was smooth and fluid, it was truly impressive. However, with the recent news of it [becoming part of Kiteworks](https://owncloud.com/news/owncloud-becomes-part-of-kiteworks/), I'm a bit unsure about its future. I can't help but wonder why so many people have been raving about Nextcloud all these years when ownCloud performs so well right out of the box. I'd love to hear about your experience and the services you use. Share your thoughts!
fedilink

Didn’t know of this one. Thanks for the info


I’ve tried lot of selfhosted note taking apps. A lot.

While Trillium is polished and efficient, I find that the PWA makes the UI hard to navigate and read. It deserves a real app, optimized for smaller screens.

I haven’t really used obisidian as it is a bit overkill for my use case anyway. So not using trillium wasn’t such a loss.

I ended up using bookstack for my knowledge base, and flatnotes for everyday note taking.


Thank you for the ressource. I’ll check it out


To dockerize an application: where to start learning.
I've recently started a crusade for the perfect selfhosted note taking app. I posted here and I read a lot of others posts and for now I think I have what I need. But as I see Joplin recommended every now and then, and given it doesn't offer a webui I can access everywhere from any computer (you need to install their app), I had this thought: how could I dockerize, say, the Linux Joplin app so I can put it behind a reverse proxy with auth and access it when I'm away from home from any computer. I've seen this done for soulseek, mkvtoolnix and others, so I know it is feasibile. Being just a hobbyist selfhoster with no programming background, I'm not sure where to start educating myself. I'm sure there are some guides out there, but I'm not sure what to look for, what terms to use in my searches. Somebody could point me to the right direction?
fedilink

I use memos already, but for another purpose. This app is great :)


I want to avoid syncthing for my notes as I’ve read some people experience issues with duplicates and conflicts between versions.


While there seems to be a selhosted version, I can’t log to it with the proprietary android app.


[Solved] I want to ditch Nextcloud notes
Hi. I'm curently using Nextcloud notes for its convenience. I use the app on my phone, and the webui on my pc. I'm willing to ditch Nextcloud as a whole, so I want to replace my note taking habits. I've tried Trilium, which lacks an Android app, and I feel the WPA makes the UI unpractical and hard to read. I've tried Joplin, but it lacks a webui. Are there other alternatives I've missed out ? **Solution:** I ended up finding [Flatnotes](https://github.com/dullage/flatnotes). It's dead simple to run and to use, has markdown and WYSIWYG, and the WPA is flawless.
fedilink

While the solution is clever, I just wish I could simply type some raw text in a field and ping it on to my other machine.


Correct me if I’m wrong but I thought the purpose of syncthing was to keep files in sync between 2 machines. Not to send files nor text.


Thanks for your answer. I remember having tried it twice before. If I remember correctly, I ditched it because it was too complicated for my use case. But as everyone is suggesting it here, I shall give it another try :)


[Solved] Solution to send mostly text but also files from android to pc and pc to android
Hello. I'm looking for a solution to send text from my PC to my phone, but also the other way around. Big plus if I can send files too in both ways. I already use pairdrop which is nice (while not 100% reliable from my experience) for files, and ntfy is good to send a notification (so basically text) to my phone but the android app won't let me send from my phone to my pc. I used to use airdroid a while back, but I don't want to use proprietary software if I can. Any idea ? Solution: snapdrop or pairdrop. For text, right click on PC, long press on phone.
fedilink

WoL through Wireguard
Hello. I was willing to post this in the home network community, but it is not active at all... So I hope this is the right place, as I use a self hosted wireguard and pihole. I'm just a hobbyist whose first language is not English, so please, bare with me :) So I use [Wireguard Easy](https://github.com/wg-easy/wg-easy) to create a tunnel to my home network to use pihole on my phone and access my services from outside. I have an app to wake my home computer on LAN that is working fine when I'm home. I'd like to be able to wake it from outside and I don't know how. A few things are bugging me. If I'm connected to my home network, shouldn't I be able to WoL my computer as long as I use my tunnel ? And, on some occasions, I was able to WoL my PC when I wasn't home (I remember doing it once when I was visiting my parents). Can someone ELI5 this please ? Thanks for your help :)
fedilink


I see a docker compose but don’t know what this line means :

build: .

I am not very educated in this regard.

Does that mean I have to dl the repo, run docker-compose up and it will build the image ?


Absolutely not selfhosted nor foss nor anything close to this sub’s content but if money is not a problem, Protools has a collaborative feature that is pretty neat. You can all work on the same session at the same time and send tracks back and forth.

This or syncthing as everyone mentioned.



That’s not exactly the solution I was looking for, but that was very instructive. Thank you.


Monitor internet micro-cuts
I suffer several micro cuts a day since a couple weeks. I'd like to monitor these cuts to help diagnose the issue with my ISP. Is there any docker image that allows to do this ? I only found internet speed monitoring.
fedilink


Folders are drwxr-sr-x and files are rw-r--r--

I added file_mode and dir_mode in my fstab mount. But should I erase uid and gid as this post mentions that it overrides file_mode and dir_mode ?


I tried rebooting with no luck. Changing my fstag entry following your suggestion didn’t work either.


It has same user:group as files that could be copied before I started having bugs, And that’s the user: group I need. I have this problem with multiple files, downloaded at different times, trying to copy them on different locations on my mount. So my guess as a beginner is that the problem is at the destination. I don’t have selinux.


Solution: Use NFS -_-' ------------------------------------------------------ Hello. I've been using hotio's qbittorent, radarr and sonarr images for a while and I've been really happy with it. But A few weeks ago, I started having problems with radarr failing to copy my files to the destination folder. I have qbittorrent on machine A and my video server on machine B (called "orbiter"). I mounted destination folder on machine B to machine A like follow: `sudo mount -t cifs //orbiter/Video/ /mnt/OrbiterVideo -o username=root,password=omgstrongpassword,uid=998,gid=100` And added it to fstab: `//orbiter/Video /mnt/OrbiterVideo/ cifs username=root,password=omgstrongpassword,iocharset=utf8,noperm,uid=998,gid=100 0 0` Now, here are my docker-compose for qbittorrent and radarr : QBittorrentVPN ``` version: "3.7" services: qbittorrent: container_name: qbittorrentvpn image: cr.hotio.dev/hotio/qbittorrent ports: - 8992:8992 - 8118:8118 environment: - WEBUI_PORTS=8992/tcp,8992/udp - PUID=998 - PGID=100 - UMASK=0022 - TZ=Europe/Paris - VPN_ENABLED=true - VPN_LAN_NETWORK=192.168.1.0/24 - VPN_CONF=wg0 # - VPN_ADDITIONAL_PORTS - VPN_IP_CHECK_DELAY=5 - PRIVOXY_ENABLED=false - DEBUG=yes volumes: - /srv/path/Files/QBittorrentVPN:/config - /srv/path/Files/QBittorrentVPN/downloads:/downloads - /srv/path/Files/QBittorrentVPN/skins:/skins cap_add: - NET_ADMIN sysctls: - net.ipv4.conf.all.src_valid_mark=1 - net.ipv6.conf.all.disable_ipv6=1 restart: unless-stopped ``` Radarr ``` version: "3.7" services: radarr: container_name: radarr hostname: Radarr image: cr.hotio.dev/hotio/radarr ports: - "7878:7878" environment: - PUID=998 - PGID=100 - UMASK=002 - TZ=Europe/Paris volumes: - /srv/path/Files/Radarr/config:/config - /srv/path/Files/QBittorrentVPN/downloads:/downloads - /mnt/OrbiterVideo/movies/:/movies restart: unless-stopped ``` Radarr manages to grab and download a movie, but it fails to copy it: ``` 2023-07-21 16:15:59.3|Warn|ImportApprovedMovie|Couldn't import movie /downloads/awesomemovie.mkv [v4.6.4.7568] System.UnauthorizedAccessException: Access to the path '/movies/awesomemovie' is denied. ---> System.IO.IOException: Permission denied --- End of inner exception stack trace --- at System.IO.FileSystem.CreateDirectory(String fullPath) at System.IO.Directory.CreateDirectory(String path) at NzbDrone.Common.Disk.DiskProviderBase.CreateFolder(String path) in ./Radarr.Common/Disk/DiskProviderBase.cs:line 189 at NzbDrone.Core.MediaFiles.MovieFileMovingService.CreateFolder(String directoryName) in ./Radarr.Core/MediaFiles/MovieFileMovingService.cs:line 215 at NzbDrone.Core.MediaFiles.MovieFileMovingService.EnsureMovieFolder(MovieFile movieFile, Movie movie, String filePath) in ./Radarr.Core/MediaFiles/MovieFileMovingService.cs:line 185 at NzbDrone.Core.MediaFiles.MovieFileMovingService.EnsureMovieFolder(MovieFile movieFile, LocalMovie localMovie, String filePath) in ./Radarr.Core/MediaFiles/MovieFileMovingService.cs:line 165 at NzbDrone.Core.MediaFiles.MovieFileMovingService.CopyMovieFile(MovieFile movieFile, LocalMovie localMovie) in ./Radarr.Core/MediaFiles/MovieFileMovingService.cs:line 90 at NzbDrone.Core.MediaFiles.UpgradeMediaFileService.UpgradeMovieFile(MovieFile movieFile, LocalMovie localMovie, Boolean copyOnly) in ./Radarr.Core/MediaFiles/UpgradeMediaFileService.cs:line 73 at NzbDrone.Core.MediaFiles.MovieImport.ImportApprovedMovie.Import(List`1 decisions, Boolean newDownload, DownloadClientItem downloadClientItem, ImportMode importMode) in ./Radarr.Core/MediaFiles/MovieImport/ImportApprovedMovie.cs:line 129 ``` It is important to note that I didn't change anything in my config. Is there something I am doing wrong here ? I can't see through this anymore.
fedilink

1- Pihole + wireguard

2- Searxng

3- Bookstack

4- qBittorentVPN + *arr suite

5- Jellyfin


Hello all ! Following [that post](https://lemmy.ml/post/1474178), I'm offering to noobs like me the opportunity to learn how to install [Teddit](https://codeberg.org/teddit/teddit) with [Docker](https://lemmy.ml/post/1508300). Being a beginner myself, I don’t pretend to know the perfect or more appropriate way to achieve this, and I hope that more experienced people will join the conversation to correct and complete the informations I’m about to give. Teddit is a free and open source alternative Reddit front-end focused on privacy. ***#The config#*** - First, let's say you want to have your persistent volume at `/srv/path/Teddit/` - Create that volume. In it, create a `config.js` file. - Paste this and edit the names of the subreddits you want to "follow": ::: spoiler spoiler ``` const config = { domain: process.env.DOMAIN || '127.0.0.1', // Or for example 'teddit.net' use_reddit_oauth: process.env.USE_REDDIT_OAUTH === 'true' || false, // If false, teddit uses Reddit's public API. If true, you need to have your own Reddit app ID (enter the app ID to the "reddit_app_id" config key). cert_dir: process.env.CERT_DIR || '', // For example '/home/teddit/letsencrypt/live/teddit.net', if you are using https. No trailing slash. theme: process.env.THEME || 'auto', // One of: 'dark', 'sepia', 'auto', ''. Auto theme uses browser's theme detection (Dark or White theme). White theme is set by the empty the option (''). clean_homepage: !('CLEAN_HOMEPAGE' in process.env) || process.env.CLEAN_HOMEPAGE === 'true', // Allows the clean homepage to be used (similar to invidious), instead of the usual reddit-like frontpage flairs_enabled: !('FLAIRS_ENABLED' in process.env) || process.env.FLAIRS_ENABLED === 'true', // Enables the rendering of user and link flairs on teddit highlight_controversial: !('HIGHLIGHT_CONTROVERSIAL' in process.env) || process.env.HIGHLIGHT_CONTROVERSIAL === 'true', // Enables controversial comments to be indicated by a typographical dagger (†) api_enabled: !('API_ENABLED' in process.env) || process.env.API_ENABLED === 'true', // Teddit API feature. Might increase loads significantly on your instance. api_force_https: process.env.API_FORCE_HTTPS === 'true' || false, // Force HTTPS to Teddit API permalinks (see #285). video_enabled: !('VIDEO_ENABLED' in process.env) || process.env.VIDEO_ENABLED === 'true', redis_enabled: !('REDIS_ENABLED' in process.env) || process.env.REDIS_ENABLED === 'true', // If disabled, does not cache Reddit API calls redis_db: process.env.REDIS_DB, redis_host: process.env.REDIS_HOST || '127.0.0.1', redis_password: process.env.REDIS_PASSWORD, redis_port: process.env.REDIS_PORT || 6379, ssl_port: process.env.SSL_PORT || 8088, nonssl_port: process.env.NONSSL_PORT || 8080, listen_address: process.env.LISTEN_ADDRESS || '0.0.0.0', // '0.0.0.0' will accept connections only from IPv4 addresses. If you want to also accept IPv6 addresses use '::'. https_enabled: process.env.HTTPS_ENABLED === 'true' || false, redirect_http_to_https: process.env.REDIRECT_HTTP_TO_HTTPS === 'true' || false, redirect_www: process.env.REDIRECT_WWW === 'true' || false, use_compression: !('USE_COMPRESSION' in process.env) || process.env.USE_COMPRESSION === 'true', use_view_cache: process.env.USE_VIEW_CACHE === 'true' || false, use_helmet: process.env.USE_HELMET === 'true' || false, // Recommended to be true when using https use_helmet_hsts: process.env.USE_HELMET_HSTS === 'true' || false, // Recommended to be true when using https trust_proxy: process.env.TRUST_PROXY === 'true' || false, // Enable trust_proxy if you are using reverse proxy like nginx trust_proxy_address: process.env.TRUST_PROXY_ADDRESS || '127.0.0.1', http_proxy: process.env.HTTP_PROXY, nsfw_enabled: !('NSFW_ENABLED' in process.env) || process.env.NSFW_ENABLED === 'true', // Enable NSFW (over 18) content. If false, a warning is shown to the user before opening any NSFW post. When the NFSW content is disabled, NSFW posts are hidden from subreddits and from user page feeds. Note: Users can set this to true or false from their preferences. videos_muted: !('VIDEOS_MUTED' in process.env) || process.env.VIDEOS_MUTED === 'true', // Automatically mute all videos in posts post_comments_sort: process.env.POST_COMMENTS_SORT || 'confidence', // "confidence" is the default sorting in Reddit. Must be one of: confidence, top, new, controversial, old, random, qa, live. reddit_app_id: process.env.REDDIT_APP_ID || 'ABfYqdDc9qPh1w', // If "use_reddit_oauth" config key is set to true, you have to obtain your Reddit app ID. For testing purposes it's okay to use this project's default app ID. Create your Reddit app here: https://old.reddit.com/prefs/apps/. Make sure to create an "installed app" type of app. domain_replacements: process.env.DOMAIN_REPLACEMENTS ? (JSON.parse(process.env.DOMAIN_REPLACEMENTS).map(([p, r]) => [new RegExp(p, 'gm'), r])) : [], // Replacements for domains in outgoing links. Tuples with regular expressions to match, and replacement values. This is in addition to user-level configuration of privacyDomains. cache_control: !('CACHE_CONTROL' in process.env) || process.env.CACHE_CONTROL === 'true', // If true, teddit will automatically remove all cached static files. By default this is set to true. cache_control_interval: process.env.CACHE_CONTROL_INTERVAL || 24, // How often the cache directory for static files is emptied (in hours). Requires cache_control to be true. Default is every 24 hours. show_upvoted_percentage: !('SHOW_UPVOTED_PERCENTAGE' in process.env) || process.env.SHOW_UPVOTED_PERCENTAGE === 'true', show_upvotes: !('SHOW_UPVOTES' in process.env) || process.env.SHOW_UPVOTES === 'true', // If true, teddit will show number of upvotes in posts and points in comments. post_media_max_heights: { /** * Sets the max-height value for images and videos in posts. * Default is 'medium'. */ 'extra-small': 300, 'small': 415, 'medium': 600, 'large': 850, 'extra-large': 1200 }, setexs: { /** * Redis cache expiration values (in seconds). * When the cache expires, new content is fetched from Reddit's API (when * the given URL is revisited). */ frontpage: 600, subreddit: 600, posts: 600, user: 600, searches: 600, sidebar: 60 * 60 * 24 * 7, // 7 days shorts: 60 * 60 * 24 * 31, wikis: 60 * 60 * 24 * 7, subreddits_explore: { front: 60 * 60 * 24 * 1, new_page: 60 }, }, rate_limiting: { enabled: false, initial_limit: 100, // This is the amount of page loads one IP address can make in one minute without getting limited. limit_after_limited: 30 // When an IP is limited, this is the amount of page loads the IP can make in one minute. }, valid_media_domains: process.env.VALID_MEDIA_DOMAINS ? JSON.parse(process.env.VALID_MEDIA_DOMAINS) : ['preview.redd.it', 'external-preview.redd.it', 'i.redd.it', 'v.redd.it', 'a.thumbs.redditmedia.com', 'b.thumbs.redditmedia.com', 'emoji.redditmedia.com', 'styles.redditmedia.com', 'www.redditstatic.com', 'thumbs.gfycat.com', 'i.ytimg.com', 'i.imgur.com'], valid_embed_video_domains: ['gfycat.com', 'youtube.com'], reddit_api_error_text: `Seems like your instance is either blocked (e.g. due to API rate limiting), reddit is currently down, or your API key is expired and not renewd properly. This can also happen for other reasons.`, /** * Here you can configure the suggested subreddits which are visible in the * cleaned homepage, and in the top bar. * You should keep at least 'All', and 'Saved'. * * If you set your configs with an environment variables for example with * docker-compose.yml, your suggested_subreddits config could be something * like this (note the quotes): * - SUGGESTED_SUBREDDITS=["Popular", "All", "Saved", "selfhosted", "linux", "datahoarder", "Monero"] * or * - 'SUGGESTED_SUBREDDITS=["Popular", "All", "Saved", "selfhosted", "linux", "datahoarder", "Monero"]' */ suggested_subreddits: process.env.SUGGESTED_SUBREDDITS ? JSON.parse(process.env.SUGGESTED_SUBREDDITS) : ['Popular', 'All', 'Saved', 'AskReddit', 'pics', 'news', 'worldnews', 'funny', 'tifu', 'videos', 'gaming', 'aww', 'todayilearned', 'gifs', 'Art', 'explainlikeimfive', 'movies', 'Jokes', 'TwoXChromosomes', 'mildlyinteresting', 'LifeProTips', 'askscience', 'IAmA', 'dataisbeautiful', 'books', 'science', 'Showerthoughts', 'gadgets', 'Futurology', 'nottheonion', 'history', 'sports', 'OldSchoolCool', 'GetMotivated', 'DIY', 'photoshopbattles', 'nosleep', 'Music', 'space', 'food', 'UpliftingNews', 'EarthPorn', 'Documentaries', 'InternetIsBeautiful', 'WritingPrompts', 'creepy', 'philosophy', 'announcements', 'listentothis', 'blog'], }; module.exports = config; ``` ::: ***#The stack#*** Then, and as a noob, I recommend deploying this as a stack in Portainer: ::: spoiler spoiler ``` version: "3.8" services: teddit: container_name: teddit image: teddit/teddit:latest environment: # uncomment if running behind a reverse proxy # - DOMAIN=your domain.tld # - USE_HELMET=true # - USE_HELMET_HSTS=true # - TRUST_PROXY=true - REDIS_HOST=teddit-redis ports: - "8080:8080" networks: - teddit_net healthcheck: test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost:8080/about"] interval: 1m timeout: 3s depends_on: - teddit-redis volumes: - /srv/path/Teddit/config.js:/teddit/config.js teddit-redis: container_name: teddit-redis image: redis:6.2.5-alpine command: redis-server environment: - REDIS_REPLICATION_MODE=master networks: - teddit_net networks: teddit_net: ``` ::: You're set up. Enjoy the few niche subs you didn't find here on Lemmy and browse them with maximum privacy :)
fedilink

That would be very helpful for beginners and newcomers


Hello all ! Following [that post](https://lemmy.ml/post/1474178), I'm offering to noobs like me the opportunity to learn how to install docker to a Debian system. Being a beginner myself, I don't pretend to know the perfect or more appropriate way to achieve this, and I hope that more experienced people will join the conversation to correct and complete the informations I'm about to give. The first way I know of is the way I first installed docker and portainer on my machine. I used OpenMediaVault and omv-extras, which was quite straight formard. But depending on the version you are using, you might not find omv-extras anymore in OMV, and the new way of getting docker through it is in my opinion quite painfull. So let's go with the simple way: Pre-requisite : having Debian installed on your machine and SSH into it. ***Set up the repository:*** 1. Update the `apt` package index and install packages to allow apt to use a repository over HTTPS: ``` sudo apt-get update sudo apt-get install \ ca-certificates \ curl \ gnupg \ lsb-release ``` 2. Add Docker’s official GPG key: ``` sudo mkdir -p /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg ``` 3. Use the following command to set up the repository: ``` echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ``` ***Install Docker Engine*** 1. Update the `apt` package index: ``` sudo apt-get update ``` 2. Install Docker Engine, containerd, and Docker Compose: ``` sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin ``` 3. You can verify that Docker Engine is installed correctly by running the `hello-world` image. ``` sudo docker run hello-world ``` **Install Portainer** 1. Create Docker Volume to store the data: ``` docker volume create portainer_data ``` 2. Install Portainer Server: ``` docker run -d -p 8000:8000 -p 9000:9000 --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data \ portainer/portainer-ce:latest ``` ***Access Portainer Dashboard*** 1. In a browser, visit the following address: ``` http://<yourmachineipadress>:9000 ``` 2. The first time you access Portainer, the system asks to create a password for the admin user. Type the password twice and select the **Create user** button. 3. Select the **Get Started** button to go to the dashboard and start using Portainer in the local environment only. You're set up ! Now, you can use simple docker-composes in Portainer **stacks** tab to deploy new apps and services.
fedilink

The Anomalous State of Knowledge
Hi all ! Like many of you, I'm coming from reddit. I haven't posted much back there because I'm basically what many people call a noob. I started learning self-hosting 2 years ago, and oh boy, this has been a journey. I've spent numerous sleepless nights trying to figure out stuff, and I now proudly run numerous services for fun, family and work. But damn, how hard was it to KNOW WHAT TO LOOK FOR. To know what to ask. To know how to ask. To get out of the *anomalous state of knowledge*, where you want to learn, you want to know, but you don't know how. Even though I'm comfortable with computers compared to many people in my surrounding, I'm no genius either. I had to learn Linux from scratch, had to find out about docker, containers, network and so on. And I did it mostly all by myself. I tried posting to reddit, and I was also reading the sub thoroughly, but I was sad to see that beginners weren't always welcome. Many many downvotes, lots of "have you tried google" and more downvotes. I ended up creating a post to talk about this state of the sub, stating that veterans weren't welcoming at all. This post got a lot of traction and upvotes, comforting me in the idea that I was not alone. It was important to draw a line between lazy posters, those who don't know how to use the search function, and those stuck in the *anomalous state of knowledge*. I know this might look like a thin line, but in reality, it is not. Because most of the time, a person really willing to learn (even though it is the most simple thing) will go into more details and passion than a lazy crowdsourcing newcomer. I'm fleeing reddit because of the shitshow it is now (among other things), and I'm really happy to use Lemmy. From what I have seen, it is more consensual and a lot less toxic. I'd love to keep it that way, and I really hope this community will follow this direction. That's why I decided to create a post on some sundays, when I'll have time, directly targeting the noob audience. I believe it will be a quick tutorial on how to install some popular service using docker. If I see that people dislike it, I'll stop. But I really hope that we'll all remember that we all had to start somewhere, that we don't all have the same skills, capabilities and time. I hope this wasn't too long of a post and that it wasn't too hard to understand. English is not my mother tongue. See you all on sunday, have fun :)
fedilink