67b3fd23d1
gates / gates (push) Failing after 13m1s
Part A: claim table documentation/audits/website-refresh-2026-10-08/claims.md; "100% open source" corrected from the licence read; unbacked claims cut (firewall, RAID, snapshots, new-machine restore, self-managed mode, household VPN, "never lost"). Part B: dawarich, docmost, grimmory, homebox, karakeep, mealie, metube, radicale, recipe-importer, sparkyfitness cards; plant-it and wger cut (not offered). Part C: /en/ twins, nav language switch, hreflang both ways, sitemap with xhtml:link, og-image-en.png. Part D: site_gates.py twins/lang/same-apps/no-Hungarian/FAQ-JSON-LD/tail. Operator ruling 9 + choice B in 10-localisation.md §11, §10.7. Register: R-902 (contact mailer source in no repo); R-813, R-784, R-559 annotated. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
159 lines
20 KiB
Python
159 lines
20 KiB
Python
# -*- coding: utf-8 -*-
|
||
"""/en/technology — the English twin of technologiak.html."""
|
||
import sys
|
||
sys.path.insert(0, __file__.rsplit("/", 1)[0])
|
||
from common import *
|
||
from en_common import *
|
||
|
||
s = en_head(read("technologiak.html"), "/technologiak", "/en/technology")
|
||
s = tr(s, [
|
||
("<title>Technológiák — Docker, vezérlőpult, Proxmox otthoni szerverhez | Felhom.eu</title>",
|
||
"<title>Technology — Docker, the Dashboard and Proxmox for a home server | Felhom.eu</title>"),
|
||
('content="Ipari szintű technológiák otthon: Docker konténerek, magyar vagy angol nyelvű vezérlőpult, Proxmox virtualizáció. HTTPS és titkosított alagút — nyitott port nélkül."',
|
||
'content="Industry-grade technology at home, in Hungary: Docker containers, a Dashboard in English or Hungarian, Proxmox virtualisation. HTTPS and an encrypted tunnel — with no open port."'),
|
||
('content="Docker, vezérlőpult, Proxmox, konténer, virtualizáció, reverse proxy, HTTPS, titkosított alagút, otthoni szerver technológia"',
|
||
'content="Docker, dashboard, Proxmox, container, virtualisation, reverse proxy, HTTPS, encrypted tunnel, home server technology"'),
|
||
('content="Professzionális technológiák otthoni szerverhez"', 'content="Professional technology for a home server"', 2),
|
||
('content="Docker, magyar vagy angol nyelvű vezérlőpult, Proxmox — ipari szintű megoldások otthoni környezetben."',
|
||
'content="Docker, a Dashboard in English or Hungarian, Proxmox — industry-grade tools at home."'),
|
||
('content="Docker, magyar vagy angol nyelvű vezérlőpult, Proxmox — ipari megoldások, otthoni környezetben."',
|
||
'content="Docker, a Dashboard in English or Hungarian, Proxmox — industry tools, at home."'),
|
||
('"headline": "Alkalmazott technológiák otthoni szerverekhez",', '"headline": "The technology behind a Felhom home server",'),
|
||
('"description": "Docker konténerek, magyar vagy angol nyelvű vezérlőpult és Proxmox virtualizáció otthoni szerverre.",',
|
||
'"description": "Docker containers, a Dashboard in English or Hungarian and Proxmox virtualisation for a home server.",'),
|
||
("<h1>Alkalmazott <span>Technológiák</span></h1>", "<h1>The <span>technology</span></h1>"),
|
||
("<p>Modern, bevált megoldások az otthoni szerverek üzemeltetéséhez. Íme, hogyan építjük fel a rendszereket.</p>",
|
||
"<p>Modern, proven tools for running a home server. This is how we build the system.</p>"),
|
||
("<h3>Tartalom</h3>", "<h3>Contents</h3>"),
|
||
('<li><a href="#kontenerek">Miért konténerek?</a></li>', '<li><a href="#containers">Why containers?</a></li>'),
|
||
('<li><a href="#single-node">A kezelőréteg (vezérlőpult)</a></li>', '<li><a href="#dashboard">The control layer (Dashboard)</a></li>'),
|
||
('<li><a href="#proxmox">Virtualizáció (Proxmox)</a></li>', '<li><a href="#proxmox">Virtualisation (Proxmox)</a></li>'),
|
||
('<li><a href="#halozat">Hálózat és biztonság</a></li>', '<li><a href="#network">Network and security</a></li>'),
|
||
('<li><a href="#tarolas">Tárolás</a></li>', '<li><a href="#storage">Storage</a></li>'),
|
||
('<li><a href="#hardver">Hardver konfigurációk</a></li>', '<li><a href="#hardware">Hardware set-ups</a></li>'),
|
||
('id="kontenerek"', 'id="containers"'), ('id="single-node"', 'id="dashboard"'), ('id="halozat"', 'id="network"'),
|
||
('id="tarolas"', 'id="storage"'), ('id="hardver"', 'id="hardware"'),
|
||
("<h2>Miért <span>konténerek?</span></h2>", "<h2>Why <span>containers?</span></h2>"),
|
||
("<p>A modern szerverüzemeltetés alapköve</p>", "<p>The cornerstone of running a modern server</p>"),
|
||
("Mi az a konténer?</h3>", "What is a container?</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>Imagine that every app runs in its own sealed \"box\". The box holds the app and everything it depends on – so it works the same way anywhere, on any server.</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>",
|
||
"<p>Containers (Docker) changed how servers are run: simpler installs, easier updates, and more reliable operation.</p>"),
|
||
("<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>",
|
||
"<p><strong>An analogy:</strong> as if every app lived in its own flat in a block of flats. It has its own front door and its own meters, and it does not bother the neighbours – but they still share one building.</p>"),
|
||
("<h3>Hagyományos telepítés</h3>", "<h3>Traditional install</h3>"),
|
||
('<div class="subtitle">„Közvetlenül a rendszerre"</div>', '<div class="subtitle">"Straight onto the system"</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>",
|
||
"<p>The apps are installed straight onto the operating system. They can clash with each other, and they are hard to remove.</p>"),
|
||
("<li>Függőségek összeakadhatnak</li>", "<li>Dependencies can get tangled</li>"),
|
||
("<li>Nehéz reprodukálni más szerveren</li>", "<li>Hard to reproduce on another server</li>"),
|
||
("<li>Frissítés = kockázat</li>", "<li>Update = risk</li>"),
|
||
("<li>Eltávolítás „szemetet\" hagy</li>", "<li>Removing an app leaves \"rubbish\" behind</li>"),
|
||
("<h3>Konténerizált telepítés</h3>", "<h3>Container install</h3>"),
|
||
("<p>Minden alkalmazás elszigetelten fut. Tiszta, rendezett, könnyen kezelhető rendszer.</p>", "<p>Every app runs on its own. A clean, tidy system that is easy to manage.</p>"),
|
||
("<li>Teljesen izolált alkalmazások</li>", "<li>Fully isolated apps</li>"),
|
||
("<li>Egy parancs = telepítés</li>", "<li>One command = installed</li>"),
|
||
("<li>Egyszerű frissítés és visszaállás</li>", "<li>Simple updates, and a simple way back</li>"),
|
||
("<li>Bárhol reprodukálható</li>", "<li>Reproducible anywhere</li>"),
|
||
("<h2>A kezelőréteg: <span>a vezérlőpult</span></h2>", "<h2>The control layer: <span>the Dashboard</span></h2>"),
|
||
("<p>Minden Felhom doboz kezelőfelülete, magyarul vagy angolul</p>", "<p>The interface of every Felhom box, in English or Hungarian</p>"),
|
||
("Mit csinál a vezérlőpult?</h3>", "What does the Dashboard do?</h3>"),
|
||
("<p>A vezérlőpult minden Felhom dobozon ott van: ez a magyar vagy angol 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>",
|
||
"<p>The Dashboard is on every Felhom box: it is the interface, in English or Hungarian, that runs your system on its Proxmox base. It was designed for home servers: you install apps in a few clicks and never touch a command line — Docker and Proxmox do the work in the background.</p>"),
|
||
("<li>Magyar vagy angol webes felület – a háztartás választ, és nincs szükség parancssor ismeretre</li>", "<li>A web interface in English or Hungarian – the household chooses, and no command-line knowledge is needed</li>"),
|
||
("<li>Alkalmazás katalógus – 56 app telepíthető pár kattintással</li>", "<li>App catalog – 56 apps to install in a few clicks</li>"),
|
||
("<li>Erőforrás figyelés – memória és tárhely használat valós időben</li>", "<li>Resource view – memory and storage use as it happens</li>"),
|
||
("<li>Automatikus mentések – adatbázis és fájl backup, állapotfigyeléssel</li>", "<li>Automatic backups – databases and files, with their status watched</li>"),
|
||
("<li>Alkalmazás frissítések – csak kipróbált verzió, előtte friss mentés, és ha az új verzió nem indul, a doboz magától visszaáll az előzőre</li>",
|
||
"<li>App updates – only versions we have tried, a fresh backup first, and if the new version does not start, the box goes back to the previous one by itself</li>"),
|
||
("<li>Rendszer monitoring – folyamatos egészségfigyelés, riasztások</li>", "<li>System monitoring – health watched all the time, with alerts</li>"),
|
||
("<p><strong>Tökéletes:</strong> Otthoni média szerver, családi felhő, személyes projektek, kis irodai használat.</p>",
|
||
"<p><strong>Good for:</strong> a home media server, a family cloud, personal projects, a small office.</p>"),
|
||
("<h3>Egy Felhom doboz felépítése</h3>", "<h3>How a Felhom box is built</h3>"),
|
||
('<div class="layer-label">Kezelő + appok</div>', '<div class="layer-label">Control + apps</div>'),
|
||
('<div class="layer-name">Vezérlőpult + Alkalmazások</div>', '<div class="layer-name">Dashboard + Apps</div>'),
|
||
('<div class="layer-tech">Magyar vagy angol kezelőfelület · Nextcloud, Jellyfin, Immich…</div>', '<div class="layer-tech">An interface in English or Hungarian · Nextcloud, Jellyfin, Immich…</div>'),
|
||
('<div class="layer-label">Konténer motor</div>', '<div class="layer-label">Container engine</div>'),
|
||
('<div class="layer-tech">Az appok elszigetelt konténerekben futnak</div>', '<div class="layer-tech">The apps run in isolated containers</div>'),
|
||
('<div class="layer-label">Rendszerkörnyezet</div>', '<div class="layer-label">System environment</div>'),
|
||
('<div class="layer-name">Izolált rendszerkörnyezet</div>', '<div class="layer-name">Isolated system environment</div>'),
|
||
('<div class="layer-tech">A te dobozod — tisztán elkülönített rendszer</div>', '<div class="layer-tech">Your box — a cleanly separated system</div>'),
|
||
('<div class="layer-label">Alapréteg</div>', '<div class="layer-label">Base layer</div>'),
|
||
('<div class="layer-tech">Virtualizációs alap · a teljes doboz mentése, visszaállítás</div>', '<div class="layer-tech">Virtualisation base · backing up the whole box, restoring</div>'),
|
||
('<div class="layer-label">Hardver</div>', '<div class="layer-label">Hardware</div>'),
|
||
('<div class="layer-name">A szerver gépe</div>', '<div class="layer-name">The server machine</div>'),
|
||
('<div class="layer-tech">Mini PC, tower vagy szerver</div>', '<div class="layer-tech">Mini PC, tower or server</div>'),
|
||
("<h2>Az alapréteg: <span>Proxmox</span></h2>", "<h2>The base layer: <span>Proxmox</span></h2>"),
|
||
("<p>Erre a stabil alapra építünk minden Felhom gépet</p>", "<p>Every Felhom machine is built on this stable base</p>"),
|
||
("Mi az a Proxmox?</h3>", "What is 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>",
|
||
"<p>Proxmox VE is a free, professional virtualisation platform — the same kind of technology data centres and companies use. It is the base of every Felhom system: we build every machine on it, and the isolated system environment your apps run in sits on top of it.</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>",
|
||
"<strong>The base, not an option:</strong> Proxmox is on every Felhom box. You do not need to know about it or deal with it — it works quietly in the background, and it is what makes your system safe and able to be backed up.</p>"),
|
||
("Mit ad neked a Proxmox alap?</h3>", "What does the Proxmox base give you?</h3>"),
|
||
("<li><strong>Mentés frissítés előtt</strong> – egy alkalmazás frissítése előtt friss mentés készül, és ha az új verzió nem indul el, a doboz magától visszaállítja az előzőt</li>",
|
||
"<li><strong>A backup before each update</strong> – before an app is updated, a fresh backup is made, and if the new version does not start, the box puts the previous one back by itself</li>"),
|
||
("<li><strong>Az egész rendszer menthető</strong> – nem csak az adataid, hanem a teljes dobozod is biztonsági mentésbe kerül, és ebből visszaállítható</li>",
|
||
"<li><strong>The whole system is backed up</strong> – not only your data: the whole box goes into a backup too, and it can be restored from it</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>Clean separation</strong> – the control layer and your apps run well apart, which makes the system more stable and safer</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>",
|
||
"<li><strong>A fast, repeatable install</strong> – setting up a new box is quick and predictable, the same way every time</li>"),
|
||
("<p><strong>Egy alap, egy feladat:</strong> a Felhom dobozon a Proxmox egyetlen elkülönített rendszerkörnyezetet futtat — azt, amelyben az alkalmazásaid dolgoznak.</p>",
|
||
"<p><strong>One base, one job:</strong> on a Felhom box, Proxmox runs a single isolated system environment — the one your apps work in.</p>"),
|
||
("<h2>Hálózat és <span>biztonság</span></h2>", "<h2>Network and <span>security</span></h2>"),
|
||
("<p>Hogyan éred el a szervered biztonságosan, bárhonnan?</p>", "<p>How do you reach your server safely, from anywhere?</p>"),
|
||
("<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>",
|
||
"<p>A reverse proxy is a \"doorkeeper\" that takes incoming requests and passes them to the right app. It also handles the HTTPS encryption.</p>"),
|
||
('<div class="node-label">Alkalmazás</div>', '<div class="node-label">App</div>'),
|
||
("<li><strong>Traefik</strong> – minden alkalmazás a saját aldomainjén, HTTPS-sel</li>", "<li><strong>Traefik</strong> – every app on its own subdomain, over HTTPS</li>"),
|
||
("<li><strong>Titkosított alagút</strong> – a doboz maga épít kapcsolatot kifelé, így otthon nem kell portot nyitni</li>",
|
||
"<li><strong>Encrypted tunnel</strong> – the box itself builds the connection outwards, so no port has to be opened at home</li>"),
|
||
("Védelem</h3>", "Protection</h3>"),
|
||
("<li><strong>Nincs nyitott port</strong> – kívülről csak a titkosított alagúton át érhető el a doboz</li>", "<li><strong>No open port</strong> – from outside, the box is reached only through the encrypted tunnel</li>"),
|
||
("<li><strong>Saját bejelentkezés</strong> – minden alkalmazásnak saját fiókjai vannak, a vezérlőpultnak jelszava</li>", "<li><strong>Own sign-in</strong> – every app has its own accounts, and the Dashboard has a password</li>"),
|
||
("<li><strong>Családi kapu</strong> – egyes alkalmazások elé a családtagok saját belépése kerül, idegen el sem jut az alkalmazásig</li>",
|
||
"<li><strong>Family gate</strong> – some apps sit behind each family member's own sign-in, so a stranger never even reaches the app</li>"),
|
||
("<li><strong>Biztonsági frissítések</strong> – a doboz rendszere magától megkapja őket</li>", "<li><strong>Security updates</strong> – the box's system gets them by itself</li>"),
|
||
("<h2>Tárolás és <span>adatvédelem</span></h2>", "<h2>Storage and <span>data safety</span></h2>"),
|
||
("<p>Hol és hogyan tárold az adataidat?</p>", "<p>Where and how should you keep your data?</p>"),
|
||
('<div class="subtitle">Gyors tárolás</div>', '<div class="subtitle">Fast storage</div>'),
|
||
("<li>Operációs rendszer</li>", "<li>Operating system</li>"),
|
||
("<li>Adatbázisok</li>", "<li>Databases</li>"),
|
||
("<li>Alkalmazások</li>", "<li>Apps</li>"),
|
||
('<div class="subtitle">Nagy kapacitás</div>', '<div class="subtitle">Large capacity</div>'),
|
||
("<li>Média könyvtár</li>", "<li>Media library</li>"),
|
||
("<li>Fotó archívum</li>", "<li>Photo archive</li>"),
|
||
("<li>Mentések</li>", "<li>Backups</li>"),
|
||
("Háromszintű mentés – így védjük az adataidat</h3>", "Backups on three levels – how we protect your data</h3>"),
|
||
("<p>A Felhom dobozon minden éjjel készül egy <strong>mentés a dobozon</strong>, egy <strong>másodpéldány egy második meghajtóra</strong>, és egy <strong>titkosított másolat egy távoli tárhelyre</strong>. A szintek együtt védenek: a helyi gyors, a távoli túléli azt is, ha a doboznak fizikailag baja esik.</p>",
|
||
"<p>Every night a Felhom box makes a <strong>backup on the box</strong>, a <strong>second copy on a second drive</strong>, and an <strong>encrypted copy on remote storage</strong>. The levels protect together: the local one is fast, and the remote one survives even if the box itself is physically harmed.</p>"),
|
||
("<strong>A több lemez önmagában nem mentés!</strong> A RAID-szerű megoldások a hardver meghibásodás ellen védenek, de nem a véletlen törlés vagy a zsarolóvírus ellen. Ezért nálunk a mentés mindig külön szinten van, nem a lemezekben.</p>",
|
||
"<strong>More disks are not a backup on their own!</strong> RAID-like set-ups protect against hardware failure, but not against an accidental delete or ransomware. That is why our backups always sit on a separate level, not in the disks.</p>"),
|
||
("<h2>Hardver <span>konfigurációk</span></h2>", "<h2>Hardware <span>set-ups</span></h2>"),
|
||
("<p>Milyen gépre van szükséged? Néhány példa konfiguráció</p>", "<p>Which machine do you need? A few example set-ups</p>"),
|
||
('<div class="hw-subtitle">Kezdő / Otthoni</div>', '<div class="hw-subtitle">Starter / Home</div>'),
|
||
("<p>Kompakt, halk, energiatakarékos megoldás.</p>", "<p>Compact, quiet and energy-saving.</p>"),
|
||
('<span class="spec-label">Fogyasztás</span>', '<span class="spec-label">Power use</span>', 2),
|
||
('<div class="label">Becsült költség</div>', '<div class="label">Estimated cost</div>', 2),
|
||
("<h3>Tower szerver</h3>", "<h3>Tower server</h3>"),
|
||
('<div class="hw-subtitle">Haladó / Családi</div>', '<div class="hw-subtitle">Advanced / Family</div>'),
|
||
("<p>Nagyobb teljesítmény és tárolókapacitás.</p>", "<p>More power and more storage.</p>"),
|
||
('<span class="spec-label">Tárolás</span>', '<span class="spec-label">Storage</span>', 2),
|
||
("<h3>Rack szerver</h3>", "<h3>Rack server</h3>"),
|
||
('<div class="hw-subtitle">Üzleti / igény szerint</div>', '<div class="hw-subtitle">Business / on request</div>'),
|
||
("<p>Ipari minőség, nagy megbízhatóság.</p>", "<p>Industrial quality, high reliability.</p>"),
|
||
('<div class="label">Becsült költség (használt)</div>', '<div class="label">Estimated cost (used)</div>'),
|
||
("Melyiket válaszd?</h3>", "Which one should you choose?</h3>"),
|
||
("<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 üzleti / igény szerinti konfiguráció — otthonra ritkán szükséges.</p>",
|
||
"<p><strong>Our advice:</strong> start small! A good mini PC is enough for most homes, and you can expand it later. A rack server is a business / on-request set-up — a home rarely needs one.</p>"),
|
||
("<h2>Nem vagy biztos, melyik <span>megoldás neked való?</span></h2>", "<h2>Not sure which <span>set-up is right for you?</span></h2>"),
|
||
("<p>Beszéljük át az igényeidet, és segítünk megtalálni a tökéletes konfigurációt.</p>", "<p>Let's talk through what you need, and we will help you find the right set-up.</p>"),
|
||
('<a href="/kapcsolat" class="cta-button">Kapcsolatfelvétel →</a>', '<a href="/en/contact" class="cta-button">Get in touch →</a>'),
|
||
('<a href="/alkalmazasok" class="cta-button-secondary">Alkalmazások böngészése →</a>', '<a href="/en/apps" class="cta-button-secondary">Browse the apps →</a>'),
|
||
])
|
||
s = finish_en(s, "/technologiak", "/en/technology", "/en/technology")
|
||
write("en/technology.html", s)
|
||
print("written en/technology.html")
|