I am somewhat late into the Linux-verse (three years in now) and want to move into self-hosting to do two things:

  1. Host my own Jitsi server and sessions. (or any other open source solution)

  2. Host my own solution to privately and securely share photographs of my kids and life here with my family abroad.

At some point, I want to host my own little static-website about myself which should “replace” having to give people a LinkedIn account or something.

The thing is, I know nothing about owning domains, etc. I have never done this before. I have been lurking around this forum to learn some of the basics, but would really like a more tailored reply (is possible). I am working in Europe.

  1. Which computer should I use? I want to host everything on my computer at home. I don’t want to go the VPS route.

  2. Where can I buy an inexpensive domain(s)? I assume I only need one.

  3. What other things do I need to consider? My current broadband is IPv4 only.

  • eodur@lemmy.world
    link
    fedilink
    English
    arrow-up
    24
    arrow-down
    1
    ·
    8 months ago

    For image hosting I would look at Immich. It aims to be a full Google Photos replacement. It isn’t quite there yet, but it is quite featureful and rapidly improving.

    • rambos@lemm.ee
      link
      fedilink
      English
      arrow-up
      11
      ·
      8 months ago

      Immich doesnt feel like beta at all, its amazing, its better than google photos imo. Nextcloud is also great, but nextcloud photos not so much

      • GregoryTheGreat@programming.dev
        link
        fedilink
        English
        arrow-up
        7
        ·
        7 months ago

        Tell that to the breaking changes server upgrades. I know something good happened when my app won’t login anymore.

        No real hate though. I’m a sponsor of the project. Shits lit.

        • rambos@lemm.ee
          link
          fedilink
          English
          arrow-up
          3
          ·
          7 months ago

          Im using immich for less than a year and there were few breaking changes. Im updating manually and I think its quite easy to follow their instructions. They also push warning message to clients before breaking change happens. But yeah I know what you mean, it can be annoying if you are auto updating

    • LifeBandit666@feddit.uk
      link
      fedilink
      English
      arrow-up
      1
      ·
      7 months ago

      Bleugh Immich.

      I’ve heard great things but I’m quite new to all this and can’t get the fucking thing to boot. Last night I followed their install via Portainer walkthrough to the letter, copy/pasted their files from their links they pointed at…

      I’ll have it running by next weekend most likely, this keeps happening, then I learn a bunch of shit. But I really have no idea why it wouldn’t boot last night.

  • th3raid0r@tucson.social
    link
    fedilink
    English
    arrow-up
    9
    arrow-down
    2
    ·
    8 months ago

    The best “bang for the buck” in your use-case is to use Nextcloud - Nextcloud Talk is your Jitsi replacement, and the files feature can be extended with the Nextcloud Photos plugin (https://github.com/nextcloud/photos).

    As for your domain question:

    1. You should use any computer you’d like that meets the Nextcloud recommendations, the key is of course isolating this machine on your home network so any “funny business” stays on the server. You can do this with VLANs or an entirely separate LAN connected to a different WAN (ISP).

    2. Many places, I like porkbun.com for real custom domains for cheap, but for your use case, you might be able to use a Dynamic DNS provider for free. It just likely won’t be an easy to remember URL (or at least, as easy as a root domain only). If you have a newer ASUS or Netgear router/modem they both have Dynamic DNS built in and you can select from a few different providers that have both free and paid tiers. ALSO it might be better to use Google Domains (now squarespace domains) since, IIRC, many DynDNS configs for routers support Google Domains too. Cloudflare can also be a decent registrar, and I’d recommend using them if you use any other cloudflare services (see below).

    3. Other things to consider: Your ISP may block port 80, meaning lots of issues. If this is the case, you might want to use a tunnel of some sort. Cloudflare has a great solution here. Even if they don’t block port 80, they may aggressively throttle and shape your incoming traffic - causing issues. Again, the tunnel is a good solution here. And, of course, your upload bandwidth matters a lot, you’ll need something around 100Mbps upload for a decent experience when accessing your stuff over the internet. The 30Mbps that’s typical of DOCSIS modems won’t cut it. Outside of these concerns it’s all about making sure you isolate your server from your “home stuff” to keep things secure.

    • umbrella@lemmy.ml
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      8 months ago

      For point 3 - I’d suggest OpenVPN or Wireguard. Simple and secure without too much fuss involved in making it work. You would have to distribute keys and/or logins which might complicate things for the users if they are laymen though.

      Also I’d agree 30mbps is not much, but for just a few users it should be fine.

      In general I will +1 Nextcloud, its not the best and kinda slow and heavy, but its the best and most full featured UX for newbie users. Feels just like something like Google or Dropbox would put out, sans all the bullshit and tracking. You can extend it easily too if you ever need to.

      • th3raid0r@tucson.social
        link
        fedilink
        English
        arrow-up
        1
        ·
        8 months ago

        I’d argue that the cloudflared daemon is even easier to use than a static wire guard or openvpn tunnel. It’s basically set and forget. The downside is that you must use cloudflare. This may, or may not be a big deal depending on OPs needs.

        I moved from a place with symmetrical gigabit to “gigabit cable” with 30mbps upload, it definitely wasn’t good enough for my small family. Photos are quite large these days - not to mention videos. Though it likely has a lot more to do with the bandwidth shaping my ISP does than the 30mbps rate.

        Also agree that it’s not perfect, but very likely the most newbie friendly solution at the moment. Especially from a deployment scenario vs going piecemeal.

        • umbrella@lemmy.ml
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          7 months ago

          The downside is that you must use cloudflare.

          yeah…

          30mbps traffic shaping

          back when i was on a DOCSIS modem, i noticed concurrent downloads would disrupt uploads and vice versa. i think this may depend on the type of connection OP has.

          • th3raid0r@tucson.social
            link
            fedilink
            English
            arrow-up
            1
            ·
            7 months ago

            yeah…

            They asked for easy, or newbie friendly - and didn’t particularly mention privacy concerns.

            Other than that, if they don’t have a port 80/433 ingress from their ISP there are scarce simple solutions that don’t require another server that also needs management, either by them or a corporate entity.

            back when i was on a DOCSIS modem, i noticed concurrent downloads would disrupt uploads and vice versa. i think this may depend on the type of connection OP has.

            I used to work at a cable company, that was either a problem that people with low SNR had. Either from external factors (tree branch on a cable line) or in-home ones (bad splitter). A modem will ramp up it’s gain in order to offset this (to a point), and in so doing, create a lot more interference between channels. OR they were hitting their ingress rate limit (which is quite agressive on residential plans because DDOS’es). It’s surprisingly easy to hit your ingress rate limit for modern http/https webservers hosting complex web apps. Lots of concurrent connections open up to try to download all the resources when you go to any website in a modern browser and while it’s not a TON of data, the short period of time causes the traffic to easily hit the PPS/BPS rate limit that ISPs employ.

            But yeah, it all depends on the ISP.

  • Decronym@lemmy.decronym.xyzB
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    7 months ago

    Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I’ve seen in this thread:

    Fewer Letters More Letters
    DNS Domain Name Service/System
    IP Internet Protocol
    NAT Network Address Translation
    SSD Solid State Drive mass storage
    SSL Secure Sockets Layer, for transparent encryption
    VPN Virtual Private Network

    6 acronyms in this thread; the most compressed thread commented on today has 10 acronyms.

    [Thread #640 for this sub, first seen 30th Mar 2024, 11:45] [FAQ] [Full list] [Contact] [Source code]

  • poVoq@slrpnk.net
    link
    fedilink
    English
    arrow-up
    2
    ·
    edit-2
    7 months ago
    1. An old laptop is the easiest to start with, but you might eventually run into storage limitations with it. But in general getting an older one and putting a bigger SSD into it is usually sufficient (but look for one that can limit battery charging to 80%). Otherwise a thin client or a mini-pc is good, but they don’t come with a built-in UPS or Keyboard/Screen for quick troubleshooting.
    2. Domains cost pretty much the same everywhere, but I think in your case OVH is good. They give you a free email service and dynDNS for free with every domain purchase, so that takes care of the difficult stuff like email hosting for notifications and the like. It also includes a free 100mb webspace you can use for that static site and not worry about your server being online all the time.
    3. IPv4 only is no problem. You need to see if your ISP gives you a dynamic public IP (so no NAT) and if the router you are using allows access to configure port-forwarding.
  • yuris@lemmy.ml
    link
    fedilink
    English
    arrow-up
    2
    ·
    7 months ago

    Hi! I’m quite new to self-hosting as well. Started about a month ago. I bought this Mini PC while it was on discount, but in general, any PC with Intel N100 should be cheap and good enough.

    I bought my domain on Namecheap, and I use Cloudflared to expose my self-hosted service with the domain I bought. More on Cloudflared here.

    I’m currently using the Mini PC to host a media server, personal notes app, a Minecraft server, and a link preservation software. I currently don’t have a photo storage service set up, because most of my storage are already used for my movies on the media server.

    However, I’ve been looking into the options for a self-hosted photo storage service. Others have mentioned Nextcloud and Immich, and they look great. I also found Ente which I might also give a try once I have upgraded my storage.

  • antlion@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    1
    ·
    7 months ago

    I have used Piwigo for this purpose the past 3.5 years. It’s running on a tiny Odroid HC-2 and solid state drive. The same device also runs Emby for video streaming. I started it with a free sub domain from afraid.org. I migrated to a real domain later. To run two services from one domain name you also need a reverse proxy and SSL certificate renewal, like SWAG or NGINX Proxy Manager or Zoraxy.

    The main thing I’ve learned is keeping everything isolated repeatable. On my Odroid I learned to use Docker and Portainer for the apps. But there were a couple times I broke everything through updates/upgrades. Now I have a small Intel N305 (Minsforum UN305C), running ProxMox VE, and apps in Linux containers. The first I set up myself to learn but later I discovered some open source helper scripts https://tteck.github.io/Proxmox/. ProxMox seems a bit more complex than Docker/Portainer, but more flexible.

    I’m using IPv4 only but I’m migrating to IPv6 soon to help with in-network routing to my domain. My advice would be unless you want to host your own DNS and override your domain to resolve to LAN, just use your IP:port on LAN and use the domain only outside your home.