Jump to content
JWTalk - Jehovah's Witnesses Online Community

Automated downloads via Docker


Recommended Posts

Hi all!

 

New user here, it's my first post. Hope you're all doing great these increasingly hard times.

 

Over the last decade I have senselessly used the web and social media without even thinking about the privacy complications that have brought me later on, the amount of targeted ads that has followed the past years, and slowly increasing almost without me even noticing, has reached new heights.. and I've always taken for granted that jw.org is up and running, not even thinking about how fragile internet is nowdays, just look at the AWS outage that took down half the globe.

 

Additionally, the past six months so much have happened on the privacy front with AI training on everything we've posted the last two decades (maybe even longer), I've come to the realisation that I have to do something about that, preparing for our "basement situation" we might be in the near future. By the way this is a personal decision, and not something I would burden anyone else with, as Jehovah has his strong arm protecting absolutely everyone from spiritual harm, I just take great joy in doing these extra tech-stuff for fun and enlightment, an to me it gives that little extra sense of detatching from satan's system. Anyways..back to my personal decision; I've started to self-host most of my stuff. My calendars, contacts, de-googled apps, local passwordvaults and encrypted docker disks. I wanted to try and set up a docker that monitors our page for new videos, and makes a local copy whenever a new one is out, but I haven't figured out a way to do this. I have tried to do that with yt-dl docker, but our webpage uses more secure way of showing videos.

 

I know there is an Android app that is not official, on the Play Store, a media player for Android TV. This app seems to always be able to get the latest video that is out out there, and I figured there must be a way to look at the source code of that .apk in order to figure out how it fetches the data, and how I might be able to make an automated dockerized solution for my self-hosted home network? In the event that internet would be strictly governed, or even UDP-ports would be just outright blocked, I'd at least have a local copy of every video that has been put out online, and it saves me from a lot of manual labor, right now I am manually downloading everything.

 

Any technical insigtful brothers or sisters in here that could have some smart ideas in what i could look in to? 

TLDR: Want an automated dockerized solution to automatically fetch our videos

 

Kind regards from your brother in Scandinavia <3

Link to comment
Share on other sites

9 minutes ago, jwhess said:

Our organization supports RSS feeds.

Welcome to our forum.

 

Thank you! That's great, allthough I've never used RSS before so I have to read more into how to do that. If you have any tips on how to get started, I'd be happy to learn about it :)

 

But as I've come to understand it - by looking it up abit - the RSS method can only save the webpage, but not download the actual videos themselves?


Edited by Groke55

typeo
Link to comment
Share on other sites

49 minutes ago, Eryk said:

JW Library will download all the videos locally, but why would you want to? You're better off getting a paper Bible :wink:

 I might have explained myself badly, apologise English is not my native language. I'm talking about all the videos that we get each month, I want a local copy of them without manually clicking each and archiving manually. Preferably Docker 24/7 that automatovally grabs releases. 

Link to comment
Share on other sites

  • 1 month later...
On 10/28/2025 at 12:32 PM, Groke55 said:

Preferably Docker 24/7 that automatovally grabs releases. 

 

Hi Brother Kim, were you able to find a solution? While I’m not familiar with Docker, it did look like Docker could maybe adapt to RSS feeds. I have to admit I’ve been tempted to try to archive some key digital files/videos and have some type of ‘JWBox like’ setup for local adhoc file sharing in case of persecution but haven’t had the circumstance to channel my hobby time into such. 

 

A brother on the forum hosts some RSS feeds. 

 

 

Link to comment
Share on other sites

On 10/28/2025 at 4:15 AM, Groke55 said:

Anyways..back to my personal decision; I've started to self-host most of my stuff. My calendars, contacts, de-googled apps, local passwordvaults and encrypted docker disks.

 

Hi Brother Kim, 

Can you share with us about how you do “self-hosting”?

Does it require a lot of work/effort?

Curious how beneficial this is for privacy/security? Thanks! 😎


Edited by Beggar for the Spirit

"Create in me a pure heart, O God, And put within me a new spirit, a steadfast one" (PS 51:10)

 

Link to comment
Share on other sites

On 12/7/2025 at 9:12 PM, Beggar for the Spirit said:

 

Hi Brother Kim, 

Can you share with us about how you do “self-hosting”?

Does it require a lot of work/effort?

Curious how beneficial this is for privacy/security? Thanks! 😎

 

Hello :) 

It's a bit complex for me to explain but I will try.. It requires some effort, but please remember that none of this is necessary. Jehovah has full control..! I am just the anxious type that breath more easily in solitude, my brain is just wired that way.. I'm a jumpy person by nature, I guess. I even have full service days in the ministry with just me and Jehovah. I like the calm it brings to lock myself as much as possible from satan's system, I really despise this system, it's demonic through and through.. But I heard we also will get an updated annual meeting video soon where we will teach how Jehovah will protect us both mentally and physical during the great tribulation. So take this seemingly juxtapositional post with a balanced mindset. Let's never forget the Ephesians 3: 20, that Jehovah's arm is never too short!.

 

Your question about security aspect. Please read with caution, as some can find this stressful!! (Ignorance can be a bliss and all of that)
Both Intel and AMD have a low-level spying kernel on all of our devices since 2008 (IME and PSP). It's a hidden CPU-chip that is always on and collect data, even when our phones and computers are off. The apps on our phones talk to each other, and if you use Google, Meta, Insta, Snapchat, Tiktok, or any app that has identifiers and fingerprinting, it will collect data. Your email and contacts are also interconnected, and also calendars and cloud drives.. By eliminating these, I can use self-hosted calendars, contacts and drives via for example Nextcloud, and then only host this data myself at home.. It runs in a containerized system called Docker. Meaning that Nextcloud think it is the only app on your system, contained (think of a ship with containers). I then always sync the calendars and contacts home, instead of giving it to Google. Microsoft Windows Recall and Copilot is a disaster, it uses TPM (Trusted Platform Module) via this IME to spy on everything. Now they have rolled out the mentioned Recall, this takes a screenshot of your screen every 3-5 seconds and sends it to Microsoft servers for AI training on Copilot. This is a client-side scan that will be mandatory in the near future, a statement said my their CEO directly. They also last month removed our ability to run local accounts on Windows, meaning you will always have to log on to Microsoft servers and let them see everything you do to train their AI and AI agents that will be used on all system apps (even the calculator and notepad asks for internet connection).

  • Small and easy tips for general security. Use an open source router like Flint 2, or anything with OpenWrt.
    • I sold my ASUS router, because I got a TOS a few months ago that basically said that "we will push updates to your device if laws and regulations says so, without notifying you".. The same with my Samsung phone that severaly locked down our rights to even monitor what type of traffic they gather from our phones. They explicitly said in the latest TOS that they will gather data from our phones, but we are not allowed to intercept or even watch what kind of data they harvest. This is one of the core enshiftification turnarounds I've seen with my own eyes that made me want to just throw it all in the ocean.
  • On your router, be it whatever you have, segment your network so that your WiFi cannot see your management network. Isolate it..
  • Disable Wifi Sense on your router, this is spyware of high technological advancements in air pressure and can calculate where you are and what you do based on pressure.
  • Use DNS ver TLS, a setting you can find on all of your browsers.
  • Don't use Google search, use startpage.com or duckduckgo. It reduces fingerprinting. Or use dockerized SearXNG where you host your search engine yourself. More on Dockers below.


To the point of self-host

I've been building this self-host for about 5 months now. First thing is that I obtained a NUC server, I used a NUC I ordered from Novacustom with libreboot, eliminating IME risk that is a very hot topic with Microsoft going completely off rails on surveillance nowdays. Having libreboot makes it so that I can only run Linux, but that's ok, we really want Linux for stability and longevity anyway. List of what I needed was as follows:

  • Server with Linux, NUC from Novacustom with PopOS or any other distro that people are comfortable with
  • Installation of Docker and Docker Compose software on the server. Docker will house all the apps you want to use. You can even download the whole Wikipedia with kiwix-serve app, for example.
  • We use Portainer, this is a GUI implementation of Docker. We need to make Portainer with the command-line way first
  • Tip: Use a note-taking app with markdown and code-formatting to document your way through it all. Obsidian, Joplin or any note taking app you prefer.

How to deploy Portainer? (The GUI variant of Docker)

  • First create a main docker folder where you will have all your app's configuration files. It will house all future apps you choose, like for example, Nextcloud, Linkwarden, Vaultwarden, Joplin, Jellyfin, Paperless, tubearchivist, navidrome, gitea, searxng, kiwix-serve (download the whole wikipedia) or any other containers you want to self-host. Just look up these names followed by "docker" on a google search, if you want to know more about those apps.. You'll quickly fall down the rabbit hole, I promise :facepalmpo2: It's so fun!!! :D
  • Install Docker and Docker compose: https://docs.docker.com/engine/install/ubuntu/ and https://docs.docker.com/compose/install
  • Like mentioned; first create the Docker mother-folder: `sudo mkdir /home/youruser/docker` on your Linux-server. Then make them writeable by `sudo chown youruser:youruser -R /home/youruser/docker/` and also ``sudo chmod 775 -R /home/youruser/docker/`. Do the same with the portainer folder inside here aswell, before next step, like so: `sudo mkdir /home/youruser/docker/portainer/{portainer_data}` and chown/chmod these folders aswell). Then deploy in terminal by pasting this:

docker run -d -p 9000:9000 \
  --name=portainer \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /home/youruser/docker/portainer/portainer_data:/data \
  portainer/portainer-ce

Now we have a working Portainer you can reach from http://localhost:9000 (or 9900 if you deployed it with 9900:9000 just as an example, to make it clear that the left side of the colon-sign is your NUC host side, and the right side is what the Portainer sees inside it's containerized environment).

 

Now you want a place to watch Videos from JW, Let's first create the environment, the app where we will be watching it from; Jellyfin

  • Before we deploy Jellyfin via Portainer, let's create the folders that Jellyfin needs, namely folder for Jellyfin's config files, and also bind map for the video files so it can see them.
    • If you read the github page at https://github.com/linuxserver/docker-jellyfin, look for the docker-compose.yaml file, and you will see it's "volume structure": `sudo mkdir /home/youruser/docker/jellyfin/{media,library}`..
      • After this make the folders adhere to your user by `sudo chown youruser:youruser -R /home/youruser/docker/jellyfin` and also ``sudo chmod 775 -R /home/youruser/docker/jellyfin`
    • Do this for all apps you want individually. Some apps need data folders only, others need data, configs and other stuff, but you can see this on their respective github pages, look for a file called docker-compose.yaml on the github and check the volumes bind-mount to see.
      • Jellyfin looks like this: `/home/youruser/docker/jellyfin/media:/media`and `/home/youruser/docker/jellyfin/library:/config`
      • The path before the colon sign is the path on your NUC, the path after colon is what the Docker app sees in it's containerized environment.
    • Then go to your Portainer, create a local docker.sock environment, Portainer will guide you through this. And then go to "stack" and "create new stack". Here we will create our first Jellyfin stack. The Jellyfin stack will in your case look like this:

---
services:
  jellyfin:
    image: lscr.io/linuxserver/jellyfin:latest
    container_name: jellyfin
    environment:
      - PUID=youruser
      - PGID=youruser
      - TZ=Europe/Amsterdam
      - JELLYFIN_PublishedServerUrl=http://192.168.0.5 #optional
    volumes:
      - /home/youruser/docker/jellyfin/library:/config
      - /home/youruser/docker/jellyfin/media:/media <---- Wait with adding this until you've read the NAS- section further below. You might want to add the NAS folder instead...
    ports:
      - 8096:8096
      - 8920:8920 #optional
      - 7359:7359/udp #optional
      - 1900:1900/udp #optional
    restart: unless-stopped

 

  • Now deploy the stack in Portainer, and you can find your "jellyfin" container under "Container" section. Click on the ports to access your Web GUI and create a user login.

 

Great! But you have need for more space, here you can use a NAS and create a network-folder mount that your Portainer apps can see and use.

  • I use a NAS with RAID 6 or SHR-2 setup. Five HDDs with two hot swap for redundancy. 
    • I run Synology, but I have disabled internet connectivity entirely on this, and removed all remnants of "phone home" codes in `sudo nano /etc/synoinfo.conf` (that's the command to get in to the file and edit away stuff).
  • On the NAS I have seperate folders that I want to reach from my NUC, folders like "media" and "personalmedia". I made these mounts NFS-mountable, by going in to the NAS' operating system's folder properties and adding my NUC's IP address to the "NFS-permissions" page. 
  • Then back to the NUC (server), I created mountable shares on my NUC that points to the two folders on my NAS.
    • I did so by first creating empty folders on my NUC to house the NAS-folders. The command to create those two empty folders is for example `sudo mkdir -p /mnt/nfs-media` and `sudo mkdir -p /mnt/nfs-personal`. (In Linux the /mnt/ folder is where you make mountable folders)
    • Then give the folders admin rights by commands `sudo chown youruser:youruser -R /mnt/nfs-<yourfolder(s)>`, much like what you did with the docker folders
    • Then add these connections to boot, by appending `sudo nano /etc/fstab` and add to the bottom the following;,
      • "192.168.18.224:/volume1/media /mnt/nfs-media nfs rw,hard,intr,noatime,nodev,nosuid,vers=4.1,async 0 0"
      • This adds the connection from your NAS to your new empty NUC-folder. Change the IP and path to the one matching your NAS.
    • After all of these are done, you need to tell the NUC to mount the new shares, do so by this; `sudo mount -a`
      • Check that they are mounted by `df -h | grep nfs`.
      • Side note; If you ever lose connection with your hard drive after a boot or a crash, the `sudo mount -a` will re-mount everything.
  • In the case of Jellyfin, that would in my case look like this: `- /mnt/nfs-media/jwvideos:/media`.

 

It's getting late here now, I might edit this post and fine-tune it later and add more to it. Hope it helps anybody

Link to comment
Share on other sites

Join the conversation with your brothers and sisters!


You can post now, and then we will take you to the membership application. If you are already a member, sign in now to post with your existing account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

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

×   Your previous content has been restored.   Clear editor

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

About JWTalk.net - Jehovah's Witnesses Online Community

Since 2006, JWTalk has proved to be a well-moderated online community for real Jehovah's Witnesses on the web. However, our community is not an official website of Jehovah's Witnesses. It is not endorsed, sponsored, or maintained by any legal entity used by Jehovah's Witnesses. We are a pro-JW community maintained by brothers and sisters around the world. We expect all community members to be active publishers in their congregations, therefore, please do not apply for membership if you are not currently one of Jehovah's Witnesses.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.

JWTalk 23.8.11 (changelog)