Ctrl K
ComunidadGuías…

mkdocs.yml

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
site_name: Norbert Csicsay - Homelab
site_description: Self-hosted infrastructure running 32 Docker Compose stacks and a 3-node K3s cluster on Proxmox VE. Built from scratch to learn Linux, networking, and DevOps practices.
site_author: Norbert Csicsay
site_url: https://docs.homelabor.net/

# Internal working documents. They live under docs/ so they sit beside the
# material they describe, but they are not part of the published portfolio:
# they name services and reasoning meant for me, not for a visitor. Leaving
# them out of `nav` was not enough - MkDocs still built them, listed them in
# sitemap.xml and indexed them for the site search.
exclude_docs: |
  superpowers/
  adr/
  README.md
  CLAUDE.md

# `README.md` is not an internal document: it is the index of docs/ for anyone
# reading the repo on GitHub, and it is kept in step with `nav` by hand. MkDocs
# drops it from the build anyway because `index.md` already claims that URL, but
# it does so with a warning, which `--strict` turns into a failed deploy. Naming
# it here makes the exclusion deliberate instead of incidental.
#
# `CLAUDE.md` never reaches CI at all - `.gitignore` covers it repo-wide - so it
# is listed for the sake of the local build only. Without the line, a local
# `mkdocs build --strict` aborts on a file the deploy workflow will never see,
# which would make the strict build impossible to reproduce before pushing.

# `--strict` in the deploy workflow turns each of these into a build failure, so
# a broken link cannot reach the published site. `warn` rather than `ignore` is
# what gives them something to escalate; `anchors` is the one that catches a
# heading rename breaking a `#fragment` somewhere else in the tree.
validation:
  omitted_files: warn
  absolute_links: warn
  unrecognized_links: warn
  anchors: warn

repo_url: https://github.com/Pironex9/homelab
repo_name: Pironex9/homelab

docs_dir: docs
theme:
  name: material
  # Exists only to carry the Umami <script> tag, which needs a data-* attribute
  # that no MkDocs config key can express. See overrides/main.html.
  custom_dir: overrides
  logo: assets/mark.svg
  favicon: assets/mark.svg
  # Stops Material fetching Roboto from Google Fonts. The faces are then set
  # through --md-text-font and --md-code-font in stylesheets/extra.css. This
  # site links from a landing page whose argument is that it is self-hosted
  # end to end; a Google Fonts request here contradicts it directly.
  font: false
  palette:
    - scheme: default
      primary: custom
      accent: custom
      toggle:
        icon: material/weather-night
        name: Switch to dark mode
    - scheme: slate
      primary: custom
      accent: custom
      toggle:
        icon: material/weather-sunny
        name: Switch to light mode
  features:
    - navigation.tabs
    - navigation.sections
    - navigation.top
    - search.highlight
    - search.suggest
    - content.code.copy
  icon:
    repo: fontawesome/brands/github

extra_css:
  - stylesheets/extra.css

extra:
  social:
    - icon: fontawesome/brands/github
      link: https://github.com/Pironex9
    - icon: fontawesome/brands/linkedin
      link: https://www.linkedin.com/in/norbert-csicsay-497195334

nav:
  - Home: index.md
  - Proxmox:
      - LXCs & VMs:
          - Docker Host (LXC 100): hosts/docker-host.md
          - Home Assistant (VM 101): hosts/haos.md
          - AdGuard Home (LXC 102): hosts/adguard.md
          - Vaultwarden (LXC 103): hosts/vaultwarden.md
          - Komodo (LXC 105): hosts/komodo.md
          - Karakeep (LXC 106): hosts/karakeep.md
          - n8n (LXC 107): hosts/n8n.md
          - Claude Code Mgmt (LXC 109): hosts/claude-mgmt.md
          - Pocket ID (LXC 114): hosts/pocket-id.md
          - Caddy Reverse Proxy (LXC 110): hosts/caddy.md
          - Agentos (LXC 113): hosts/agentos.md
      - Nobara PC: hosts/nobara.md
      - Windows 11 (nobara dual-boot): hosts/winpc.md
      - Hetzner VPS: hosts/vps.md
      - K3s Cluster (3x OptiPlex): hosts/k3s-cluster.md
      - Retired:
          - Raspberry Pi 4: hosts/raspberry-pi.md
          - Ollama (LXC 108): hosts/ollama.md
  - Setup Guides:
      - Core Infrastructure:
          - 01 - Proxmox + MergerFS + SnapRAID: proxmox/01_Proxmox_VE_9.1_MergerFS_SnapRAID_Installation_Documentation.md
          - 02 - Docker LXC Setup: proxmox/02_Proxmox_Docker_LXC_Setup_-_Detailed_Process.md
          - 03 - USB HDD + SnapRAID Sync: proxmox/03_USB_HDD_Integration_SnapRAID_Sync_and_Media_Structure_Fix.md
          - 04 - Home Assistant + Zigbee2MQTT: proxmox/04_Home_Assistant_OS_VM_Zigbee2MQTT_Backup_Strategy_Setup.md
          - 05 - AdGuard Home + Tailscale DNS: proxmox/05_AdGuard_Home_Setup_Dedicated_LXC_Tailscale_DNS_Integration.md
      - Services:
          - 06 - Immich Photo Management: proxmox/06_Immich_Setup_Full_Installation_Guide.md
          - 07 - Scrutiny Disk Health: proxmox/07_Scrutiny_Disk_Health_Monitoring_Setup_Guide.md
          - 08 - Netdata Monitoring: proxmox/08_Netdata_System_Monitoring_Setup_Guide.md
          - 09 - Vaultwarden: proxmox/09_Vaultwarden.md
          - 10 - Helper Script LXCs: proxmox/10_Helper_Script_LXCs.md
          - 11 - Jellyfin Hardware Transcoding: proxmox/11_Jellyfin_Hardware_Transcoding_Setup.md
          - 12 - Karakeep AI Tagging: proxmox/12_Karakeep_AI_Tagging_with_Ollama_Setup_Documentation.md
      - Operations:
          - 13 - USB Disk Troubleshooting: proxmox/13_USB_Disk_Unmount_Problem_Resolution_disk4_ADATA_HD710_PRO.md
          - 14 - NFS Setup: proxmox/14_NFS-Setup_Documentation.md
          - 15 - Backup System: proxmox/15_Proxmox_Backup_System_Documentation.md
      - Platform & Automation:
          - 16 - Komodo Setup: proxmox/16_Komodo_complete_setup.md
          - 17 - SuggestArr: proxmox/17_SuggestArr_Setup_Troubleshooting_Guide.md
          - 18 - Claude Code Mgmt LXC: proxmox/18_Claude_Code_Management_LXC_Setup.md
          - 19 - DocuSeal E-Signature: proxmox/19_DocuSeal_E-Signature_Setup.md
          - 20 - MkDocs Portfolio Site: proxmox/20_MkDocs_Portfolio_Site_Setup.md
          - 21 - Public Form E-Signature Automation: proxmox/21_Public_Form_E-Signature_Automation.md
          - 22 - Dawarich GPS Tracking: proxmox/22_Dawarich_GPS_Tracking_Setup.md
          - 23 - Homelable Network Visualization + MCP: proxmox/23_Homelable_Setup.md
          - 24 - IP Conflict and DHCP Incident: proxmox/24_IP_Conflict_DHCP_Incident_Network_Hardening.md
          - 25 - Art Portfolio Static Site: proxmox/25_Art_Portfolio_Static_Site.md
          - 26 - Interactive Network Topology Map: proxmox/26_Network_Topology_Map.md
          - 27 - Homepage GitOps Config: proxmox/27_Homepage_GitOps_Config.md
          - 28 - SnapRAID Daemon Setup: proxmox/28_SnapRAID_Daemon_Setup.md
          - 29 - Rails Learning Lab: proxmox/29_Rails_Learning_Lab.md
          - 30 - Backup Verification + Restore Test: proxmox/30_Backup_Verification_Restore_Test.md
          - 31 - Tailscale Port Collision + DNS Audit: proxmox/31_Tailscale_Port_Collision_DNS_Audit.md
          - 32 - Nobara SSH Freeze (open): proxmox/32_Nobara_SSH_Freeze_Investigation.md
          - 33 - Daily AI News Digest Pipeline: proxmox/33_AI_News_Digest_Pipeline.md
          - 34 - Transcode-Free Re-encode (AV1/Hi10P to H.264): proxmox/34_Transcode_Free_Re-encode_AV1_to_H264.md
          - 35 - Cron Job Monitoring (Uptime Kuma): proxmox/35_Cron_Job_Monitoring_Uptime_Kuma.md
          - 36 - Immich Bulk Import and ML Pipeline: proxmox/36_Immich_Bulk_Import_ML_Pipeline.md
          - 37 - Calibre-Web Bulk Ebook Import: proxmox/37_Calibre_Web_Automated_Bulk_Import.md
          - 38 - Calibre Metadata Cleanup: proxmox/38_Calibre_Metadata_Cleanup.md
          - 39 - Auditing a Community Fork: proxmox/39_Auditing_a_Community_Fork.md
          - 40 - Shelfmark Book Pipeline: proxmox/40_Shelfmark_Book_Pipeline.md
          - 41 - Hermes Agent Capability Hardening: proxmox/41_Hermes_Agent_Capability_Hardening.md
          - 42 - Sonarr/Radarr Missing Media Audit: proxmox/42_Sonarr_Radarr_Missing_Media_Audit.md
          - 43 - Nobara DSCP SSH Timeout: proxmox/43_Nobara_DSCP_SSH_Timeout.md
          - 44 - Host Metrics Into The K3s Prometheus: proxmox/44_Host_Metrics_Into_The_K3s_Prometheus.md
          - 45 - Fleet-Wide Package Updates: proxmox/45_Fleet_Wide_Package_Updates.md
          - 46 - Pedicure Practice App: proxmox/46_Pedicure_Practice_App.md
          - 47 - When One File Is Two Episodes: proxmox/47_When_One_File_Is_Two_Episodes.md
          - 48 - When an Episode Is an Executable: proxmox/48_When_An_Episode_Is_An_Executable.md
          - 49 - Six Hours of "No Internet": proxmox/49_Six_Hour_NIC_Hang.md
          - 50 - Paperless and the HP Smart Tank: proxmox/50_Paperless_And_The_HP_Smart_Tank.md
          - 51 - Two Alerts, and the One Nobody Raised: proxmox/51_Two_Alerts_And_The_One_Nobody_Raised.md
          - 52 - The Door Sensor That Looked Alive: proxmox/52_The_Door_Sensor_That_Looked_Alive.md
          - 53 - Autodarts Thin Client for a Friend: proxmox/53_Autodarts_Thin_Client_For_A_Friend.md
          - 54 - The Reboot That Looked Like a Hang: proxmox/54_The_Reboot_That_Looked_Like_A_Hang.md
          - 55 - PHP2Shell, Which of Our Services Run PHP: proxmox/55_PHP2Shell_Exposure_Check.md
      - Deprecated:
          - Recommendarr: proxmox/deprecated/Recommendarr_Setup_Troubleshooting_Guide.md
          - Scanopy: proxmox/deprecated/Scanopy.md
          - Minecraft Server: proxmox/deprecated/Minecraft_Server_Setup.md
  - K3s Cluster:
      - 01 - Infrastructure as Code: k3s/01_K3s_Infrastructure_as_Code.md
      - 02 - Version Upgrades: k3s/02_Version_Upgrades.md
      - 03 - Longhorn Storage: k3s/03_Longhorn_Storage.md
      - 04 - Hardening and Recovery: k3s/04_Hardening_and_Recovery.md
      - 05 - Wake-on-LAN: k3s/05_Wake_on_LAN.md
  - VPS:
      - 01 - Hetzner VPS + Pangolin + Jellyfin: vps/01_Hetzner_VPS_Pangolin_Jellyfin_Setup.md
      - 02 - Security Configuration: vps/02_Security_Configuration_Guide.md
      - 03 - Uptime Kuma Migration to VPS: vps/03_Uptime_Kuma_VPS_Migration.md
      - 04 - Landing Page (homelabor.net): vps/04_Landing_Page_Setup.md
  - Projects:
      - Factory Defect Map Import Script: other/factory-copy-script.md
      - Prompt Self-Audit Script: other/prompt-analysis.md
      - Custom Claude Code Output Style: other/claude-output-style.md

plugins:
  - search

markdown_extensions:
  - admonition
  - pymdownx.highlight:
      anchor_linenums: true
      line_spans: __span
      pygments_lang_class: true
  - pymdownx.inlinehilite
  - pymdownx.superfences
  - tables
  - toc:
      permalink: true