Just posting here cause I have been a lurker for a long time and wanted to share the latest version of my Kubernetes based homelab !

When finally all of it is in one place !

Services Details:

  • Authentik: Authentication SSO for all services (The UI you see here)
  • Adguard: DNS server for the homelab as well as DNS blocker
  • ArgoCD: Applications to deploy apps to Kubernetes
  • Gitea: Git source code version control
  • Longhorn: Storage for the Kubernetes cluster
  • MinIO: Backup storage for the Kubernetes cluster
  • DSM: Synology NAS main UI
  • Traefik: Reverse proxy for the homelab
  • TrueNAS (Scale): Main NAS
  • Unifi: Unifi UI homepage
  • Vault: Secret storage for the Kubernetes cluster
  • Wireguard: VPN to access services from outside
  • Grafana: Dashboards for the homelab
  • Graphite: Exporter to retrieve external metrics to feed them back to Prometheus
  • Prometheus: Metrics DB to feed Grafana
  • FlareSolverr: Bypass cloudflare protection
  • Gotenberg: Convert files (Word, excel, etc)
  • Prowlarr: Serves as a discovery server for Radarr and Sonarr
  • Radarr: Handles movies
  • Sonarr: Handles TV Shows
  • Sunshine: Selfhosted cloud gaming PC UI
  • Syncthing: Handles files synchronization between devices
  • Transmission: Handles P2P Files
  • Immich: Google photo replacement
  • Libreddit: Access reddit without reddit
  • Overseerr: Movies and TV Shows request management
  • PaperlessNGX: Stores all documents
  • Plex: Personal netflix
  • Tandoor: Recipes management
  • SearxNG: Selfhosted search engine

Any question or feedback is welcome !

  • nkls@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    I am planning for a while now to install Authentik / Authelia, but I always keep delaying it, as it sounds difficuld and more complex.

    How much effort was it for you?

  • jesuslop@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    Nice mix. FlareSolverr is an *arr thing or can it be truly used as a generic http proxy, as in putting it in firefox settings say?

  • YYCwhatyoudidthere@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    Thanks for including descriptions. Too often I have to search for an unfamiliar app name and wonder: is it hosted on git? Is it this one with a .ai domain? Pretty sure this one is a pharma company website…

    • agentpanda@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Yea seriously. Somebody is like “I run Cumface mostly it solves all my problems” and I’m like ‘great… now I have to wade through all these google results and lots of tissues until I find something related to my lab environment.’ Turns out it was a tool I didn’t even need and now everything is sticky and I’m confused.

      • jah_bro_ney@alien.topB
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Turns out it was a tool I didn’t even need and now everything is sticky and I’m confused

        Not often you see /r/BrandNewSentence material on this sub

  • BoKKeR111@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    I am also doing this. So far only setup portainer. Would love to talk to you. I work with oauth2 but I am trying to learn more abd the authentik terms are different from my normal use case. There are many flows etc

    • Unsaddle5359@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Oh yeah it is a nightmare to get started (IMO) due to their own wording for most of the stuff I have added an edit if you want to check a bit more of how I have setup stuff maybe some questions will be answered there…

  • Nezteb@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    That stresses me out, but I am very impressed!

    If you’re able to document roughly how you set everything up, that’d be a great resource for the sub. 😄

    • Unsaddle5359@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      I have added an edit (but you will see on the last point a full on guide is started but god it is not the most funny part to do!)

  • akram_boutou@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    Thank you for sharing, looks great. I wonder how you configured access to the Kubernetes services. You mentioned you leverage WIreguard VPN but is it possible to configure SSL certificates for the VPN services?

    • Unsaddle5359@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      I have added an edit but before you posted this so let me answer here (you can check the edit also if you feel like it)

      Basically I use traefik and cert manager to retreieve star SSL certs (*.domain.com) for all the domains I own, as those are done via DNS-01 challenges you don’t need your server to be accessible via internet.

      The VPN is then pointing at adguard for its DNS and adguard points my star domains to traefik which then redirect to each services with the star certificate

      EDIT: external services such as the VPN itself is also redirected via Traefik using external services objects so my VPN can sit outside the cluster (in my trueNAS machine) but still have an SSL cert

      • akram_boutou@alien.topB
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Thanks, indeed you are right using DNS 01 challenge can be appropriate for this. Btw do you use a VPN for transmission. I mean, for egress traffic, I have been trying to figure out how to set it up without any luck.

        • Unsaddle5359@alien.topOPB
          link
          fedilink
          English
          arrow-up
          1
          ·
          11 months ago

          I don’t require it as it’s allowed where I live for personal use ^^

          But you would require a sidecar pod from whatever vpn and use a given config by your vpn provider then redirect all pod traffic through your sidecar but I think some images of transmission have it all included.

  • FUCKUSERNAME2@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    Libreddit: Access reddit without reddit

    Does this still work for you? I’m interested but the GitHub page indicates that it’s no longer fully functional due to the recent API changes.

    • Unsaddle5359@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      I have added an edit I hope it answers questions you might have (feel free to let me know if you have more)

    • nkls@alien.topB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      I have just read your comment on libreddit. It works fine for me. The only difference I could feel is that some pictures load more slowly.

  • FreebirdLegend07@alien.topB
    link
    fedilink
    English
    arrow-up
    1
    ·
    11 months ago

    At one point I was trying to setup keycloak and then authentik. What do you use for your ingress? The biggest issue I had (aside from not getting authentik to work) was finding the correct way to setup ingress-nginx to actually work properly with authentik.

    You have any example yaml files that would help get started on this?

    • Unsaddle5359@alien.topOPB
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      I have added an edit I hope it answers questions you might have (feel free to let me know if you have more)