Self-hosting - Part 2 - Jellyfin

Self-hosting - Part 2 - Jellyfin

Missed Part 1? Check it out here.

A year ago, I became a parent, and like many others, I’ve been thinking about how to navigate screen time for my child. While she’s still too young—experts recommend avoiding screen time before the age of two (double-check with professionals for accuracy)—I want to ensure that when the time comes, she has access to a safe, controlled media environment.

Platforms like YouTube and TikTok can expose kids to all kinds of content, some of which may not be appropriate. Rather than leaving everything open-ended, I wanted a system where I could curate educational and entertaining content, allowing her to explore media safely when she's mature enough to make informed choices.

That’s where Jellyfin comes in. It’s an open-source media server that functions like mainstream streaming services but gives you full control. You upload and manage the content yourself. This means no unwanted ads, no algorithm-driven recommendations, and complete peace of mind.

Features

  • Full Control Over Content.
  • Completely Free and Open-Source.
  • Privacy-Focused unlike commercial platforms, Jellyfin doesn’t track your viewing habits or serve targeted recommendations.
  • Cross-Platform Compatibility. It works on a wide range of devices, including smart TVs, mobile phones, tablets, and web browsers.
  • Supports Multiple Users. You can create user profiles with customized access levels, perfect for family use.

  • No Internet Required unlike streaming services, your media is stored locally, so you don’t need an active internet connection to watch.


Installation

Deploying Jellyfin is as straightforward as brewing your morning coffee. You can follow the docker compose deployment steps in the official Jellyfin Docker documentation.

If you want a step by step guide on how to deploy Jellyfin, check this Youtube link.

After the installation, you'll be able to access Jellyfin easily from any browser. A mobile app for Android and iOS can be installed from Playstore and App store.


Remote Access

To access your locally installed Jellyfin server from outside your home network, consider using ZeroTier for secure remote connectivity. By adding both the device running Jellyfin and your phone (or any other device needing access) to the same ZeroTier network, you can use the ZeroTier-assigned IP address to connect from anywhere. This approach enhances security by allowing you to control who can access your services, eliminating the need to expose them on a public server. Additionally, ZeroTier can be utilized with other services you wish to access remotely.

To set up and use ZeroTier on an Ubuntu system, follow these steps:

1. Install ZeroTier on Ubuntu:

Open a terminal and execute the following command to install ZeroTier:

curl -s https://install.zerotier.com | sudo bash        

This command fetches and runs the ZeroTier installation script, setting up the necessary components on your system.

2. Create a ZeroTier Account and Network:

  • Visit the ZeroTier website and sign up for an account.
  • Once logged in, click on "Create A Network" to generate a new virtual network.
  • Note the Network ID of the created network; you'll need this to connect devices.

3. Join Your Ubuntu System to the ZeroTier Network:

In the terminal, use the following command, replacing yourNetworkID with the actual Network ID obtained earlier:

sudo zerotier-cli join yourNetworkID        

After executing this command, your device will attempt to join the specified ZeroTier network.

4. Authorize the Device on the ZeroTier Network:

  • Return to the ZeroTier web console and navigate to your network's settings.
  • Under the "Members" section, locate the entry corresponding to your Ubuntu device.
  • Check the "Auth?" box to authorize this device to participate in the network.


Mohamed Sadek

Founder, COM-IoT Technologies

1 周

Well said Ahmed Radwan

Gehad AboHarga

Software Engineer | Robotics & Machine Learning Specialist

1 周

Brilliant ?we are lucky to have you ??

要查看或添加评论,请登录

Ahmed Radwan的更多文章

  • Self-hosting - Part 1 - Immich

    Self-hosting - Part 1 - Immich

    Disclaimer: My current setup isn't perfect and can be done in a better and more optimized way. I chose to do it this…

    4 条评论
  • IPC Mechanisms (ROS1 vs Shared Memory IPC)

    IPC Mechanisms (ROS1 vs Shared Memory IPC)

    Introduction Inter-Process Communication (IPC) mechanisms are fundamental to modern operating systems, enabling…

    6 条评论
  • LIO-SAM on Yonohub

    LIO-SAM on Yonohub

    We are pleased to announce the release of LIO-SAM Mapping ready-to-use Block on YonoArc. You can use the block to…

  • AirSim with Autoware

    AirSim with Autoware

    As illustrated in our previous articles(Autoware.ai Vision & Autoware.

    5 条评论
  • Autoware on Yonohub (Vision pipeline) — Part 3

    Autoware on Yonohub (Vision pipeline) — Part 3

    This article is part of the Autoware series. Check out the full series: Part 1, Part 2 We are pleased to announce the…

  • Autoware on Yonohub — Part 2

    Autoware on Yonohub — Part 2

    We are pleased to announce the release of Autoware Localization and Perception blocks on Yonohub. With these blocks…

    9 条评论
  • Autoware on Yonohub?-?Part?1

    Autoware on Yonohub?-?Part?1

    We are pleased to announce the release of AutowareAI ready-to-use environment on Yonohub. With this environment, you…

  • Waymo Open Dataset Player on Yonohub

    Waymo Open Dataset Player on Yonohub

    Introduction Waymo is well-known for their development in autonomous vehicles since 2009 and in 2017 they started a…

    13 条评论