Files
felhom.eu/website/technologiak.html
T
admin aa3d7c762d website: reflect Proxmox-based platform (foundation framing, stack diagram, FAQ)
- technologiak.html: kill the 'most users don't need Proxmox' warning; reframe Proxmox
  as the foundation every box is built on (grounded benefits: snapshot-before-change,
  whole-system backup/restore to new hardware, isolation, fast provisioning); rebuild the
  stack diagram to 5 layers (Hardver -> Proxmox VE -> izolált rendszerkörnyezet -> Docker
  -> Felhő Felügyelő + Alkalmazások); reframe the controller as the management layer on
  every box; relabel Kubernetes + rack/multi-node as 'Üzleti / igény szerint' (Option 3).
- index.html: Proxmox tile 'Virtualizáció haladóknak' -> 'Stabil virtualizációs alap';
  Kubernetes tile -> 'Üzleti szintű rendelkezésre állás'.
- gyik.html: rewrite the OS answer (Proxmox VE foundation + Docker in isolated env); new
  'Mi az a Proxmox' FAQ entry; snapshot clause on the update FAQ (visible + JSON-LD).
- biztonsagimentes.html: note the whole system (not just data) is backup/restorable.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-28 09:58:38 +02:00

1111 lines
50 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="hu">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Technológiák — Docker, Felhő Felügyelő, Proxmox, Kubernetes otthoni szerverhez | Felhom.eu</title>
<meta name="description" content="Ipari szintű technológiák otthon: Docker konténerek, Felhő Felügyelő, Proxmox virtualizáció, Kubernetes. SSL, tűzfal, VPN — professzionális biztonság."> <link rel="preconnect" href="https://fonts.googleapis.com">
<meta name="keywords" content="Docker, Felhő Felügyelő, Proxmox, Kubernetes, k3s, konténer, virtualizáció, reverse proxy, SSL, tűzfal, VPN, otthoni szerver technológia">
<meta name="robots" content="index, follow">
<link rel="canonical" href="https://felhom.eu/technologiak">
<meta property="og:type" content="article">
<meta property="og:url" content="https://felhom.eu/technologiak">
<meta property="og:title" content="Professzionális technológiák otthoni szerverhez">
<meta property="og:description" content="Docker, Felhő Felügyelő, Proxmox, Kubernetes — ipari szintű megoldások otthoni környezetben.">
<meta property="og:image" content="https://felhom.eu/assets/og-image.png">
<meta property="og:locale" content="hu_HU">
<meta property="og:site_name" content="Felhom.eu">
<meta name="twitter:card" content="summary_large_image">
<meta name="twitter:title" content="Professzionális technológiák otthoni szerverhez">
<meta name="twitter:description" content="Docker, Felhő Felügyelő, Proxmox, Kubernetes — ipari megoldások, otthoni környezetben.">
<meta name="twitter:image" content="https://felhom.eu/assets/og-image.png">
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "Article",
"headline": "Alkalmazott technológiák otthoni szerverekhez",
"description": "Docker konténerek, Felhő Felügyelő, Proxmox virtualizáció és Kubernetes megoldások otthoni szerverre.",
"author": {"@type": "Organization", "name": "Felhom.eu"},
"publisher": {"@type": "Organization", "name": "Felhom.eu", "logo": {"@type": "ImageObject", "url": "https://felhom.eu/assets/logo.png"}},
"mainEntityOfPage": "https://felhom.eu/technologiak"
}
</script>
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
<link href="https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
<link rel="icon" type="image/png" href="/assets/logo_favicon_2.svg">
<script defer src="https://stats.felhom.eu/script.js" data-website-id="d419db57-5e1c-48df-bdb3-c29f25fb1661"></script>
<style>
/* ============================================
UNIFIED CSS - felhom.eu
============================================ */
/* --- CSS Variables --- */
:root {
--bg-primary: #0d1117;
--bg-secondary: #161b22;
--bg-card: #1c2128;
--text-primary: #e6edf3;
--text-secondary: #8b949e;
--text-muted: #6e7681;
--accent-blue: #0088cc;
--accent-light: #00aaff;
--accent-glow: rgba(0, 136, 204, 0.3);
--border-color: #30363d;
--success-green: #238636;
--warning-orange: #d29922;
}
/* --- Reset & Base --- */
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
background: var(--bg-primary);
color: var(--text-primary);
line-height: 1.6;
min-height: 100vh;
}
body::before {
content: '';
position: fixed;
top: 0; left: 0;
width: 100%; height: 100%;
background-image:
linear-gradient(rgba(0, 136, 204, 0.03) 1px, transparent 1px),
linear-gradient(90deg, rgba(0, 136, 204, 0.03) 1px, transparent 1px);
background-size: 50px 50px;
pointer-events: none;
z-index: -1;
}
/* --- Layout --- */
.container { max-width: 1100px; margin: 0 auto; padding: 0 24px; }
/* --- Navigation --- */
nav {
position: fixed;
top: 0; left: 0; right: 0;
padding: 20px 0;
background: rgba(13, 17, 23, 0.9);
backdrop-filter: blur(12px);
border-bottom: 1px solid var(--border-color);
z-index: 200;
}
nav .container { display: flex; justify-content: space-between; align-items: center; }
.logo { display: flex; align-items: center; gap: 12px; text-decoration: none; }
.logo img { height: 40px; width: auto; }
.logo-text { font-size: 1.5rem; font-weight: 700; color: var(--accent-light); letter-spacing: -0.02em; }
.nav-links { display: flex; gap: 32px; list-style: none; }
.nav-links a {
color: var(--text-secondary);
text-decoration: none;
font-weight: 500;
font-size: 0.95rem;
transition: color 0.2s ease;
}
.nav-links a:hover,
.nav-links a.active { color: var(--accent-light); }
/* --- Typography with gradient span support --- */
h1 span, h2 span, h3 span, h4 span {
background: linear-gradient(135deg, var(--accent-light), var(--accent-blue));
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
/* --- Page Header --- */
.page-header { padding: 140px 0 60px; text-align: center; }
.page-header h1 { font-size: clamp(2rem, 4vw, 3rem); font-weight: 700; margin-bottom: 16px; letter-spacing: -0.02em; }
.page-header p { font-size: 1.1rem; color: var(--text-secondary); max-width: 700px; margin: 0 auto; }
/* --- Section Headers --- */
.section-header { text-align: center; margin-bottom: 48px; }
.section-header h2 { font-size: 2rem; font-weight: 700; margin-bottom: 16px; letter-spacing: -0.02em; }
.section-header p { color: var(--text-secondary); font-size: 1.1rem; max-width: 700px; margin: 0 auto; }
/* --- Content Sections --- */
.content-section { padding: 80px 0; }
.content-section.alt-bg { background: var(--bg-secondary); }
/* --- Buttons --- */
.cta-button {
display: inline-flex;
align-items: center;
gap: 8px;
background: linear-gradient(135deg, var(--accent-blue), var(--accent-light));
color: white;
padding: 16px 32px;
border-radius: 8px;
text-decoration: none;
font-weight: 600;
font-size: 1rem;
transition: transform 0.2s ease, box-shadow 0.2s ease;
box-shadow: 0 4px 20px var(--accent-glow);
}
.cta-button:hover { transform: translateY(-2px); box-shadow: 0 8px 30px var(--accent-glow); }
.cta-button-secondary {
display: inline-flex;
align-items: center;
gap: 8px;
background: transparent;
color: var(--accent-light);
padding: 14px 28px;
border: 2px solid var(--accent-blue);
border-radius: 8px;
text-decoration: none;
font-weight: 600;
font-size: 1rem;
transition: all 0.2s ease;
margin-left: 16px;
}
.cta-button-secondary:hover { background: var(--accent-blue); color: white; }
/* --- Footer --- */
footer {
padding: 40px 0;
border-top: 1px solid var(--border-color);
text-align: center;
}
footer p { color: var(--text-secondary); font-size: 0.9rem; }
/* --- TOC Navigation (Content, not nav) --- */
.toc-nav {
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: 12px;
padding: 24px 32px;
margin-bottom: 48px;
}
.toc-nav h3 {
font-size: 0.85rem;
text-transform: uppercase;
letter-spacing: 0.05em;
color: var(--text-muted);
margin-bottom: 16px;
}
.toc-links {
display: flex;
flex-wrap: wrap;
gap: 12px 24px;
list-style: none;
}
.toc-links a {
color: var(--accent-light);
text-decoration: none;
font-size: 0.95rem;
font-weight: 500;
transition: color 0.2s ease;
}
.toc-links a:hover { color: var(--text-primary); }
/* --- Info Cards --- */
.info-card {
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: 16px;
padding: 40px;
margin-bottom: 32px;
}
.info-card:last-child { margin-bottom: 0; }
.info-card h3 {
font-size: 1.4rem;
margin-bottom: 20px;
color: var(--text-primary);
display: flex;
align-items: center;
gap: 12px;
}
.info-card h3 .icon { font-size: 1.6rem; }
.info-card p {
color: var(--text-secondary);
font-size: 1rem;
line-height: 1.8;
margin-bottom: 16px;
}
.info-card p:last-child { margin-bottom: 0; }
/* --- Boxes --- */
.highlight-box {
background: linear-gradient(135deg, rgba(0, 136, 204, 0.1), rgba(0, 136, 204, 0.05));
border: 1px solid var(--accent-blue);
border-radius: 12px;
padding: 20px 24px;
margin: 20px 0;
}
.highlight-box p { color: var(--text-primary); margin: 0; }
.highlight-box strong { color: var(--accent-light); }
.warning-box {
background: linear-gradient(135deg, rgba(210, 153, 34, 0.1), rgba(210, 153, 34, 0.05));
border: 1px solid var(--warning-orange);
border-radius: 12px;
padding: 20px 24px;
margin: 20px 0;
}
.warning-box p { color: var(--text-primary); margin: 0; }
/* --- Feature Lists --- */
.feature-list {
list-style: none;
margin: 20px 0;
}
.feature-list li {
color: var(--text-secondary);
font-size: 0.95rem;
display: flex;
align-items: flex-start;
gap: 12px;
margin-bottom: 12px;
line-height: 1.6;
}
.feature-list li::before {
content: '✓';
color: var(--success-green);
font-weight: bold;
flex-shrink: 0;
margin-top: 2px;
}
.feature-list.cons li::before {
content: '✗';
color: var(--warning-orange);
}
/* --- Comparison Grid --- */
.comparison-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 24px;
margin-top: 32px;
}
.comparison-card {
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: 16px;
padding: 32px;
transition: border-color 0.3s ease, transform 0.3s ease;
position: relative;
}
.comparison-card:hover {
border-color: var(--accent-blue);
transform: translateY(-4px);
}
.comparison-card.recommended {
border-color: var(--accent-light);
}
.comparison-card.recommended::before {
content: '★ Ajánlott';
position: absolute;
top: -12px;
left: 24px;
background: linear-gradient(135deg, var(--accent-blue), var(--accent-light));
color: white;
padding: 4px 12px;
border-radius: 12px;
font-size: 0.75rem;
font-weight: 600;
}
.comparison-card .card-icon { font-size: 2.5rem; margin-bottom: 16px; }
.comparison-card h3 { font-size: 1.3rem; margin-bottom: 8px; color: var(--text-primary); }
.comparison-card .subtitle { font-size: 0.9rem; color: var(--accent-light); margin-bottom: 16px; }
.comparison-card p { color: var(--text-secondary); font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px; }
.use-case-tag {
display: inline-block;
background: rgba(0, 136, 204, 0.15);
color: var(--accent-light);
padding: 4px 10px;
border-radius: 6px;
font-size: 0.8rem;
font-weight: 500;
margin-right: 8px;
margin-bottom: 8px;
}
/* --- Hardware Cards --- */
.hardware-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 24px;
}
.hardware-card {
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: 16px;
overflow: hidden;
transition: border-color 0.3s ease, transform 0.3s ease;
}
.hardware-card:hover { border-color: var(--accent-blue); transform: translateY(-4px); }
.hardware-card-header {
background: linear-gradient(135deg, rgba(0, 136, 204, 0.1), rgba(0, 136, 204, 0.05));
padding: 24px;
border-bottom: 1px solid var(--border-color);
text-align: center;
}
.hardware-card-header .hw-icon { font-size: 3rem; margin-bottom: 12px; }
.hardware-card-header h3 { font-size: 1.2rem; margin-bottom: 4px; }
.hardware-card-header .hw-subtitle { font-size: 0.85rem; color: var(--text-muted); }
.hardware-card-body { padding: 24px; }
.hardware-card-body p { color: var(--text-secondary); font-size: 0.95rem; line-height: 1.6; margin-bottom: 16px; }
.spec-list { list-style: none; margin: 16px 0; }
.spec-list li {
display: flex;
justify-content: space-between;
padding: 8px 0;
border-bottom: 1px solid var(--border-color);
font-size: 0.9rem;
}
.spec-list li:last-child { border-bottom: none; }
.spec-list .spec-label { color: var(--text-muted); }
.spec-list .spec-value { color: var(--text-primary); font-weight: 500; }
.price-range {
text-align: center;
margin-top: 16px;
padding-top: 16px;
border-top: 1px solid var(--border-color);
}
.price-range .label { font-size: 0.8rem; color: var(--text-muted); margin-bottom: 4px; }
.price-range .price { font-size: 1.3rem; font-weight: 700; color: var(--accent-light); }
/* --- Stack Diagram --- */
.stack-diagram {
background: var(--bg-card);
border: 1px solid var(--border-color);
border-radius: 16px;
padding: 40px;
margin: 32px 0;
}
.stack-diagram h3 { text-align: center; font-size: 1.2rem; margin-bottom: 32px; color: var(--text-secondary); }
.stack-layers {
display: flex;
flex-direction: column;
gap: 12px;
max-width: 600px;
margin: 0 auto;
}
.stack-layer { display: flex; align-items: center; gap: 16px; }
.layer-label { width: 120px; font-size: 0.8rem; color: var(--text-muted); text-align: right; flex-shrink: 0; }
.layer-content {
flex: 1;
background: var(--bg-secondary);
border: 1px solid var(--border-color);
border-radius: 8px;
padding: 16px 20px;
text-align: center;
font-weight: 500;
transition: all 0.3s ease;
}
.layer-content:hover { border-color: var(--accent-blue); transform: scale(1.02); }
.layer-content.highlight { background: rgba(0, 136, 204, 0.15); border-color: var(--accent-blue); }
.layer-content .layer-name { font-size: 1rem; color: var(--text-primary); margin-bottom: 4px; }
.layer-content .layer-tech { font-size: 0.8rem; color: var(--text-muted); }
/* --- Network Flow --- */
.network-flow {
display: flex;
justify-content: center;
align-items: center;
gap: 16px;
flex-wrap: wrap;
margin: 24px 0;
}
.flow-node {
background: var(--bg-secondary);
border: 1px solid var(--border-color);
border-radius: 10px;
padding: 16px 24px;
text-align: center;
min-width: 120px;
}
.flow-node .node-icon { font-size: 1.5rem; margin-bottom: 8px; }
.flow-node .node-label { font-size: 0.85rem; color: var(--text-primary); font-weight: 500; }
.flow-node .node-tech { font-size: 0.75rem; color: var(--text-muted); }
.flow-arrow { font-size: 1.2rem; color: var(--accent-blue); }
/* --- CTA Section --- */
.cta-section { padding: 80px 0; text-align: center; }
.cta-section h2 { font-size: 2rem; font-weight: 700; margin-bottom: 16px; }
.cta-section p { color: var(--text-secondary); font-size: 1.1rem; margin-bottom: 32px; max-width: 600px; margin-left: auto; margin-right: auto; }
/* --- Responsive --- */
@media (max-width: 900px) {
.toc-links { flex-direction: column; gap: 8px; }
.layer-label { width: 80px; font-size: 0.7rem; }
.network-flow { flex-direction: column; }
.flow-arrow { transform: rotate(90deg); }
.cta-button-secondary { margin-left: 0; margin-top: 16px; display: block; }
}
@media (max-width: 600px) {
.page-header { padding: 120px 0 40px; }
.info-card { padding: 24px; }
.content-section { padding: 60px 0; }
}
/* --- Hamburger Button --- */
.hamburger {
display: none;
background: none;
border: none;
cursor: pointer;
padding: 8px;
z-index: 200;
-webkit-tap-highlight-color: transparent;
}
.hamburger-box {
width: 28px;
height: 20px;
display: flex;
flex-direction: column;
justify-content: space-between;
}
.hamburger-line {
display: block;
width: 100%;
height: 2px;
background: var(--text-primary);
border-radius: 2px;
transition: transform 0.3s ease, opacity 0.3s ease;
transform-origin: center;
}
/* Hamburger → X animation */
.hamburger.is-active .hamburger-line:nth-child(1) {
transform: translateY(9px) rotate(45deg);
}
.hamburger.is-active .hamburger-line:nth-child(2) {
opacity: 0;
}
.hamburger.is-active .hamburger-line:nth-child(3) {
transform: translateY(-9px) rotate(-45deg);
}
/* --- Mobile Menu Overlay --- */
.mobile-overlay {
display: none;
position: fixed;
top: 0; left: 0; right: 0; bottom: 0;
background: rgba(0, 0, 0, 0.5);
z-index: 140;
opacity: 0;
transition: opacity 0.3s ease;
}
.mobile-overlay.is-visible {
opacity: 1;
}
/* --- Mobile Nav Styles --- */
@media (max-width: 900px) {
.hamburger {
display: block;
}
.nav-links {
display: flex;
flex-direction: column;
position: fixed;
top: 0;
right: -280px;
width: 280px;
height: 100vh;
height: 100dvh;
background: var(--bg-secondary);
border-left: 1px solid var(--border-color);
padding: 80px 32px 32px;
gap: 0;
z-index: 150;
transition: right 0.3s ease;
overflow-y: auto;
}
.nav-links.is-open {
right: 0;
}
.nav-links li {
border-bottom: 1px solid var(--border-color);
}
.nav-links a {
display: block;
padding: 16px 0;
font-size: 1.05rem;
}
.mobile-overlay {
display: block;
pointer-events: none;
}
.mobile-overlay.is-visible {
pointer-events: auto;
}
/* Prevent body scroll when menu is open */
body.menu-open {
overflow: hidden;
}
}
</style>
</head>
<body>
<nav>
<div class="container">
<a href="/" class="logo">
<img src="/assets/logo.png" alt="Felhom.eu logo">
<span class="logo-text">felhom.eu</span>
</a>
<ul class="nav-links">
<li><a href="/#szolgaltatasok">Szolgáltatások</a></li>
<li><a href="/alkalmazasok">Alkalmazások</a></li>
<li><a href="/technologiak" class="active">Technológiák</a></li>
<li><a href="/biztonsagimentes">Mentések</a></li>
<li><a href="/gyik">GYIK</a></li>
<li><a href="/kapcsolat">Kapcsolat</a></li>
</ul>
<button class="hamburger" id="hamburger" aria-label="Menü megnyitása" aria-expanded="false">
<span class="hamburger-box">
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
<span class="hamburger-line"></span>
</span>
</button>
</div>
</nav>
<div class="mobile-overlay" id="mobileOverlay"></div>
<main>
<section class="page-header">
<div class="container">
<h1>Alkalmazott <span>Technológiák</span></h1>
<p>Modern, bevált megoldások az otthoni szerverek üzemeltetéséhez. Íme, hogyan építjük fel a rendszereket.</p>
</div>
</section>
<!-- Table of Contents -->
<section class="content-section" style="padding-top: 0;">
<div class="container">
<div class="toc-nav">
<h3>Tartalom</h3>
<ul class="toc-links">
<li><a href="#kontenerek">Miért konténerek?</a></li>
<li><a href="#single-node">Egyszerű telepítés (Felhő Felügyelő)</a></li>
<li><a href="#proxmox">Virtualizáció (Proxmox)</a></li>
<li><a href="#kubernetes">Magas rendelkezésre állás (Kubernetes)</a></li>
<li><a href="#halozat">Hálózat és biztonság</a></li>
<li><a href="#tarolas">Tárolás</a></li>
<li><a href="#hardver">Hardver konfigurációk</a></li>
</ul>
</div>
</div>
</section>
<!-- Miért konténerek? -->
<section class="content-section alt-bg" id="kontenerek">
<div class="container">
<div class="section-header">
<h2>Miért <span>konténerek?</span></h2>
<p>A modern szerverüzemeltetés alapköve</p>
</div>
<div class="info-card">
<h3><span class="icon">📦</span> Mi az a konténer?</h3>
<p>Képzeld el, hogy minden alkalmazás egy saját, elszigetelt „dobozban" fut. Ez a doboz tartalmazza az alkalmazást és minden függőségét így garantáltan ugyanúgy működik bárhol, bármilyen szerveren.</p>
<p>A konténerek (Docker) forradalmasították a szerverüzemeltetést: egyszerűbb telepítés, könnyebb frissítés, és megbízhatóbb működés.</p>
<div class="highlight-box">
<p><strong>Analógia:</strong> Mintha minden alkalmazás a saját lakásában élne egy társasházban. Van saját bejárata, saját közműórája, és nem zavarja a szomszédokat de mégis egy épületen osztoznak.</p>
</div>
</div>
<div class="comparison-grid">
<div class="comparison-card">
<div class="card-icon">🖥️</div>
<h3>Hagyományos telepítés</h3>
<div class="subtitle">„Közvetlenül a rendszerre"</div>
<p>Az alkalmazások közvetlenül az operációs rendszerre települnek. Ütközhetnek egymással, nehéz eltávolítani őket.</p>
<ul class="feature-list cons">
<li>Függőségek összeakadhatnak</li>
<li>Nehéz reprodukálni más szerveren</li>
<li>Frissítés = kockázat</li>
<li>Eltávolítás „szemetet" hagy</li>
</ul>
</div>
<div class="comparison-card recommended">
<div class="card-icon">🐳</div>
<h3>Konténerizált telepítés</h3>
<div class="subtitle">Docker / Podman</div>
<p>Minden alkalmazás elszigetelten fut. Tiszta, rendezett, könnyen kezelhető rendszer.</p>
<ul class="feature-list">
<li>Teljesen izolált alkalmazások</li>
<li>Egy parancs = telepítés</li>
<li>Egyszerű frissítés és visszaállás</li>
<li>Bárhol reprodukálható</li>
</ul>
</div>
</div>
</div>
</section>
<!-- Single Node - Felhő Felügyelő -->
<section class="content-section" id="single-node">
<div class="container">
<div class="section-header">
<h2>A kezelőréteg: <span>Felhő Felügyelő</span></h2>
<p>Minden Felhom doboz magyar nyelvű kezelőfelülete</p>
</div>
<div class="info-card">
<h3><span class="icon">🎯</span> Mit csinál a Felhő Felügyelő?</h3>
<p>A Felhő Felügyelő minden Felhom dobozon ott van: ez a magyar nyelvű kezelőfelület, amely a Proxmox alapra épülő rendszeredet vezérli. Egy kimondottan otthoni szerverekre tervezett felület, ahol pár kattintással telepíthetsz alkalmazásokat, és nem kell parancssorhoz nyúlnod — a háttérben a Docker és a Proxmox dolgozik helyetted.</p>
<ul class="feature-list">
<li>Magyar nyelvű webes felület nincs szükség parancssor ismeretre</li>
<li>Alkalmazás katalógus 45+ app telepíthető pár kattintással</li>
<li>Erőforrás figyelés memória és tárhely használat valós időben</li>
<li>Automatikus mentések adatbázis és fájl backup, állapotfigyeléssel</li>
<li>Alkalmazás frissítések egy kattintással, naplózással</li>
<li>Rendszer monitoring folyamatos egészségfigyelés, riasztások</li>
</ul>
<div class="highlight-box">
<p><strong>Tökéletes:</strong> Otthoni média szerver, családi felhő, személyes projektek, kis irodai használat.</p>
</div>
</div>
<div class="stack-diagram">
<h3>Egy Felhom doboz felépítése</h3>
<div class="stack-layers">
<div class="stack-layer">
<div class="layer-label">Kezelő + appok</div>
<div class="layer-content highlight">
<div class="layer-name">Felhő Felügyelő + Alkalmazások</div>
<div class="layer-tech">Magyar kezelőfelület · Nextcloud, Jellyfin, Immich…</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Konténer motor</div>
<div class="layer-content">
<div class="layer-name">Docker</div>
<div class="layer-tech">Az appok elszigetelt konténerekben futnak</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Rendszerkörnyezet</div>
<div class="layer-content">
<div class="layer-name">Izolált rendszerkörnyezet</div>
<div class="layer-tech">A te dobozod — tisztán elkülönített rendszer</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Alapréteg</div>
<div class="layer-content">
<div class="layer-name">Proxmox VE</div>
<div class="layer-tech">Virtualizációs alap · pillanatkép, mentés, visszaállítás</div>
</div>
</div>
<div class="stack-layer">
<div class="layer-label">Hardver</div>
<div class="layer-content">
<div class="layer-name">A szerver gépe</div>
<div class="layer-tech">Mini PC, tower vagy szerver</div>
</div>
</div>
</div>
</div>
</div>
</section>
<!-- Proxmox -->
<section class="content-section alt-bg" id="proxmox">
<div class="container">
<div class="section-header">
<h2>Az alapréteg: <span>Proxmox</span></h2>
<p>Erre a stabil alapra építünk minden Felhom gépet</p>
</div>
<div class="info-card">
<h3><span class="icon">🔮</span> Mi az a Proxmox?</h3>
<p>A Proxmox VE egy ingyenes, professzionális virtualizációs platform — ugyanaz a fajta technológia, amelyet adatközpontok és cégek használnak. Ez a Felhom rendszerek alapja: erre építünk minden gépet, és erre települ az izolált rendszerkörnyezet, amelyben az alkalmazásaid futnak.</p>
<div class="highlight-box">
<p>🧱 <strong>Az alap, nem opció:</strong> A Proxmox minden Felhom dobozon ott van. Nem kell róla tudnod és nem kell vele foglalkoznod — csendben a háttérben dolgozik, és ez teszi a rendszeredet biztonságossá és menthetővé.</p>
</div>
</div>
<div class="info-card">
<h3><span class="icon">🎯</span> Mit ad neked a Proxmox alap?</h3>
<ul class="feature-list">
<li><strong>Pillanatkép minden változtatás előtt</strong> frissítés vagy beállítás előtt a rendszer pillanatképet készít, így bármi gond esetén pillanatok alatt visszaállunk az előző állapotra</li>
<li><strong>Az egész rendszer menthető</strong> nem csak az adataid, hanem a teljes dobozod biztonsági mentésbe tehető, és szükség esetén egy új gépre is visszaállítható</li>
<li><strong>Tiszta elkülönítés</strong> a kezelőréteg és az alkalmazásaid erősen elkülönítve futnak, így stabilabb és biztonságosabb a rendszer</li>
<li><strong>Gyors, megismételhető telepítés</strong> egy új doboz beüzemelése gyors és kiszámítható, mindig ugyanúgy</li>
</ul>
<div class="highlight-box">
<p><strong>És ha többre van szükséged…</strong> ugyanez az alap teszi lehetővé a haladó igényeket is: Windows-os szoftver vagy hálózati szolgáltatás (pl. pfSense/OPNsense) külön virtuális gépben, tesztkörnyezetek, vagy egy app extra erős elkülönítése — kérésre.</p>
</div>
</div>
</div>
</section>
<!-- Kubernetes -->
<section class="content-section" id="kubernetes">
<div class="container">
<div class="section-header">
<h2>Magas rendelkezésre állás: <span>Kubernetes</span></h2>
<p>Üzleti és haladó igényekre, kérésre</p>
</div>
<div class="info-card">
<h3><span class="icon">🚀</span> Mi az a Kubernetes?</h3>
<p>A Kubernetes (k8s) egy konténer „orkesztrátor" automatikusan kezeli, hogy hol és hogyan fussanak az alkalmazásaid. Ha egy szerver meghibásodik, automatikusan áthelyezi a szolgáltatásokat egy másikra.</p>
<div class="highlight-box">
<p>🏢 <strong>Üzleti / igény szerint:</strong> Ez nem otthoni alapfunkció és nem a Felhő Felügyelő alternatívája — a több gépből álló, magas rendelkezésre állású (HA) fürt egy külön, kérésre kiépített üzleti megoldás. Otthoni használatra a Proxmox alapra épülő Felhő Felügyelő a megfelelő választás.</p>
</div>
</div>
<div class="info-card">
<h3><span class="icon">🎯</span> Mikor érdemes Kubernetes-t használni?</h3>
<ul class="feature-list">
<li><strong>Több szerver (node)</strong> 2+ gép együttműködése</li>
<li><strong>Magas rendelkezésre állás</strong> a szolgáltatás nem állhat le</li>
<li><strong>Automatikus helyreállítás</strong> ha valami elromlik, a rendszer javítja magát</li>
<li><strong>Rolling updates</strong> frissítés leállás nélkül</li>
</ul>
</div>
<div class="comparison-grid">
<div class="comparison-card recommended">
<div class="card-icon">🏠</div>
<h3>k3s</h3>
<div class="subtitle">Lightweight Kubernetes</div>
<p>Könnyűsúlyú Kubernetes disztribúció — kis, több gépből álló üzleti fürtökhöz, kérésre.</p>
<ul class="feature-list">
<li>~512MB RAM-ból fut</li>
<li>Egyetlen bináris fájl</li>
<li>Beépített load balancer</li>
</ul>
</div>
<div class="comparison-card">
<div class="card-icon">🏢</div>
<h3>Teljes Kubernetes</h3>
<div class="subtitle">kubeadm / RKE2</div>
<p>Enterprise-grade megoldás nagyobb infrastruktúrához.</p>
<ul class="feature-list">
<li>Teljes funkciókészlet</li>
<li>Széles ökoszisztéma</li>
</ul>
<ul class="feature-list cons">
<li>Nagyobb erőforrás igény</li>
</ul>
</div>
</div>
</div>
</section>
<!-- Hálózat -->
<section class="content-section alt-bg" id="halozat">
<div class="container">
<div class="section-header">
<h2>Hálózat és <span>biztonság</span></h2>
<p>Hogyan éred el a szervered biztonságosan, bárhonnan?</p>
</div>
<div class="info-card">
<h3><span class="icon">🔄</span> Reverse Proxy</h3>
<p>A reverse proxy egy „kapus", aki fogadja a beérkező kéréseket és továbbítja a megfelelő alkalmazáshoz. Emellett kezeli a HTTPS titkosítást is.</p>
<div class="network-flow">
<div class="flow-node">
<div class="node-icon">🌍</div>
<div class="node-label">Internet</div>
</div>
<div class="flow-arrow"></div>
<div class="flow-node">
<div class="node-icon">🔐</div>
<div class="node-label">Reverse Proxy</div>
<div class="node-tech">Traefik / Nginx</div>
</div>
<div class="flow-arrow"></div>
<div class="flow-node">
<div class="node-icon">📦</div>
<div class="node-label">Alkalmazás</div>
</div>
</div>
<ul class="feature-list">
<li><strong>Traefik</strong> automatikus SSL, dinamikus konfiguráció</li>
<li><strong>Nginx Proxy Manager</strong> egyszerű webes felület</li>
<li><strong>Caddy</strong> minimalista, automatikus HTTPS</li>
</ul>
</div>
<div class="info-card">
<h3><span class="icon">🛡️</span> Tűzfal és védelem</h3>
<ul class="feature-list">
<li><strong>UFW tűzfal</strong> csak a szükséges portok nyitva</li>
<li><strong>Fail2ban</strong> brute-force támadások blokkolása</li>
<li><strong>Geo-blocking</strong> kérések szűrése földrajzi hely alapján</li>
<li><strong>Tailscale VPN</strong> biztonságos távoli elérés</li>
</ul>
</div>
</div>
</section>
<!-- Tárolás -->
<section class="content-section" id="tarolas">
<div class="container">
<div class="section-header">
<h2>Tárolás és <span>adatvédelem</span></h2>
<p>Hol és hogyan tárold az adataidat?</p>
</div>
<div class="comparison-grid">
<div class="comparison-card">
<div class="card-icon"></div>
<h3>SSD (NVMe/SATA)</h3>
<div class="subtitle">Gyors tárolás</div>
<ul class="feature-list">
<li>Operációs rendszer</li>
<li>Adatbázisok</li>
<li>Alkalmazások</li>
</ul>
</div>
<div class="comparison-card">
<div class="card-icon">🗄️</div>
<h3>HDD</h3>
<div class="subtitle">Nagy kapacitás</div>
<ul class="feature-list">
<li>Média könyvtár</li>
<li>Fotó archívum</li>
<li>Mentések</li>
</ul>
</div>
</div>
<div class="info-card" style="margin-top: 32px;">
<h3><span class="icon">🔄</span> RAID adatvédelem</h3>
<p>A RAID több merevlemezt fog össze, hogy védjen az adatvesztés ellen. Ha egy lemez meghibásodik, az adatok nem vesznek el.</p>
<div class="warning-box">
<p>⚠️ <strong>A RAID nem backup!</strong> Véd a hardver meghibásodás ellen, de nem a véletlen törlés vagy zsarolóvírus ellen. Mindig legyen külön mentés!</p>
</div>
</div>
</div>
</section>
<!-- Hardver konfigurációk -->
<section class="content-section alt-bg" id="hardver">
<div class="container">
<div class="section-header">
<h2>Hardver <span>konfigurációk</span></h2>
<p>Milyen gépre van szükséged? Néhány példa konfiguráció</p>
</div>
<div class="hardware-grid">
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon">📦</div>
<h3>Mini PC + NAS</h3>
<div class="hw-subtitle">Kezdő / Otthoni</div>
</div>
<div class="hardware-card-body">
<p>Kompakt, halk, energiatakarékos megoldás.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Intel N100</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">16-32 GB</span></li>
<li><span class="spec-label">SSD</span><span class="spec-value">256-512 GB</span></li>
<li><span class="spec-label">Fogyasztás</span><span class="spec-value">15-35W</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség</div>
<div class="price">80.000 - 150.000 Ft</div>
</div>
</div>
</div>
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon">🗼</div>
<h3>Tower szerver</h3>
<div class="hw-subtitle">Haladó / Családi</div>
</div>
<div class="hardware-card-body">
<p>Nagyobb teljesítmény és tárolókapacitás.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Intel i5/i7</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">32-64 GB</span></li>
<li><span class="spec-label">Tárolás</span><span class="spec-value">4-8 TB (RAID)</span></li>
<li><span class="spec-label">Fogyasztás</span><span class="spec-value">50-120W</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség</div>
<div class="price">200.000 - 400.000 Ft</div>
</div>
</div>
</div>
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon">🏢</div>
<h3>Rack szerver</h3>
<div class="hw-subtitle">Üzleti / igény szerint</div>
</div>
<div class="hardware-card-body">
<p>Ipari minőség, nagy megbízhatóság.</p>
<ul class="spec-list">
<li><span class="spec-label">CPU</span><span class="spec-value">Xeon / EPYC</span></li>
<li><span class="spec-label">RAM</span><span class="spec-value">64-256 GB ECC</span></li>
<li><span class="spec-label">Tárolás</span><span class="spec-value">8-24 bay</span></li>
<li><span class="spec-label">Extra</span><span class="spec-value">IPMI, red. PSU</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség (használt)</div>
<div class="price">150.000 - 600.000 Ft</div>
</div>
</div>
</div>
<div class="hardware-card">
<div class="hardware-card-header">
<div class="hw-icon">🔗</div>
<h3>Multi-node cluster</h3>
<div class="hw-subtitle">Üzleti / igény szerint (HA)</div>
</div>
<div class="hardware-card-body">
<p>Több gép együttműködése k3s-szel.</p>
<ul class="spec-list">
<li><span class="spec-label">Node-ok</span><span class="spec-value">3-5 mini PC</span></li>
<li><span class="spec-label">RAM/node</span><span class="spec-value">8-16 GB</span></li>
<li><span class="spec-label">Tárolás</span><span class="spec-value">Longhorn + NAS</span></li>
<li><span class="spec-label">Hálózat</span><span class="spec-value">Gigabit switch</span></li>
</ul>
<div class="price-range">
<div class="label">Becsült költség (3 node)</div>
<div class="price">200.000 - 350.000 Ft</div>
</div>
</div>
</div>
</div>
<div class="info-card" style="margin-top: 48px;">
<h3><span class="icon">💡</span> Melyiket válaszd?</h3>
<div class="highlight-box">
<p><strong>Tanácsunk:</strong> Kezdj kicsiben! Egy jó mini PC elegendő a legtöbb otthoni igényhez, és később bővítheted. A rack szerver és a multi-node fürt üzleti / igény szerinti konfiguráció — otthonra ritkán szükséges.</p>
</div>
</div>
</div>
</section>
<!-- CTA -->
<section class="cta-section">
<div class="container">
<h2>Nem vagy biztos, melyik <span>megoldás neked való?</span></h2>
<p>Beszéljük át az igényeidet, és segítünk megtalálni a tökéletes konfigurációt.</p>
<a href="/kapcsolat" class="cta-button">Kapcsolatfelvétel →</a>
<a href="/alkalmazasok" class="cta-button-secondary">Alkalmazások böngészése →</a>
</div>
</section>
</main>
<footer>
<div class="container">
<p>© 2026 felhom.eu — Saját felhőd, saját szabályaid</p>
</div>
</footer>
<script>
(function() {
var hamburger = document.getElementById('hamburger');
var navLinks = document.querySelector('.nav-links');
var overlay = document.getElementById('mobileOverlay');
var body = document.body;
if (!hamburger || !navLinks || !overlay) {
console.warn('[mobile-menu] Missing elements:', {
hamburger: !!hamburger,
navLinks: !!navLinks,
overlay: !!overlay
});
return;
}
function openMenu() {
hamburger.classList.add('is-active');
navLinks.classList.add('is-open');
overlay.classList.add('is-visible');
body.classList.add('menu-open');
hamburger.setAttribute('aria-expanded', 'true');
hamburger.setAttribute('aria-label', 'Menü bezárása');
}
function closeMenu() {
hamburger.classList.remove('is-active');
navLinks.classList.remove('is-open');
overlay.classList.remove('is-visible');
body.classList.remove('menu-open');
hamburger.setAttribute('aria-expanded', 'false');
hamburger.setAttribute('aria-label', 'Menü megnyitása');
}
hamburger.addEventListener('click', function() {
if (navLinks.classList.contains('is-open')) {
closeMenu();
} else {
openMenu();
}
});
overlay.addEventListener('click', closeMenu);
navLinks.querySelectorAll('a').forEach(function(link) {
link.addEventListener('click', closeMenu);
});
document.addEventListener('keydown', function(e) {
if (e.key === 'Escape' && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
window.addEventListener('resize', function() {
if (window.innerWidth > 900 && navLinks.classList.contains('is-open')) {
closeMenu();
}
});
})();
</script>
</body>
</html>
================================================================================
Summary: 13 files included, 218 skipped
================================================================================