Vodiči

Kako Postaviti Vlastiti Kućni Server Koristeći Samo Docker i Portainer

  • 14 min čitanja
  • Hostragons tim
Kako Postaviti Vlastiti Kućni Server Koristeći Samo Docker i Portainer

Postavljanje vlastitog kućnog servera (self-hosting) koristeći samo Docker i Portainer; uključuje instalaciju Linuxa na mini PC, stari prijenosnik ili server s niskom potrošnjom, pokretanje aplikacija u kontejnerima putem Docker Engine-a, upravljanje tim kontejnerima putem web sučelja Portainer-a, te završavanje potrebnih sigurnosnih, sigurnosnih kopija, postavki domene i pristupa. Ukratko, cilj je omogućiti dijeljenje datoteka, medijski server, upravitelj lozinki, aplikaciju za bilješke, nadzor panel ili osobne web usluge na jednoj mašini, na jednostavan, upravljiv i prenosiv način.

U ovom vodiču ćemo obraditi korake za postavljanje kućnog servera pomoću Dockera i Portainera na ažuran, jasan i praktičan način za 2026. Godinu. Izgradit ćemo arhitekturu koja zahtijeva malo upotrebe naredbenog retka, upravlja se putem Portainer-a, i može se lako premjestiti na VPS ili profesionalne hosting infrastrukture kako raste. Iako je ovaj vodič namijenjen početnicima, uključuje i praktične napomene koje će biti korisne iskusnijim korisnicima u područjima kao što su mrežna sigurnost, trajnost podataka, sigurnosne kopije, HTTPS, preusmjeravanje domena i odabir usluga.

Što je Self-Hosting i Zašto Koristiti Docker + Portainer?

Self-hosting je proces u kojem neke od digitalnih usluga koje koristite hostirate na vlastitom serveru umjesto na platformama trećih strana. Na primjer, možete pokrenuti svoj arhiv fotografija, osobnu cloud pohranu, RSS čitač, upravitelj lozinki ili razvojne alate na vlastitom kućnom serveru. Temeljna prednost je veća kontrola nad podacima, prilagodba i iskustvo učenja.

Docker pokreće aplikacije u izoliranim paketima zvanim kontejneri. To znači da ovisnosti koje aplikacija zahtijeva ne ometaju ostatak sustava. Portainer vizualizira upravljanje Docker-om. Omogućava vam da pokrećete, zaustavljate, pregledavate zapise, kreirate mreže, povežete volumene i objavljujete skupove putem preglednika.

Ova kombinacija je vrlo moćna za kućne servere jer može istovremeno pokretati mnoge usluge s niskim hardverskim zahtjevima, lako ažurirati aplikacije i po potrebi premjestiti istu strukturu na drugi server. Ako vaša kućna internetska veza postane nedovoljna ili ako želite visoku dostupnost, moguće je prenijeti sličnu Docker strukturu na cloud server. U tom smislu, mogu se razmotriti opcije za profesionalne prijelaze poput VPS server rješenja i Paketi web hostinga.

Što je Potrebno Prije Početka

Za postavljanje kućnog servera ne trebate skupi hardver. Međutim, potrošnja energije, zdravlje diska i mrežna povezanost su važni za sustav koji radi 24/7. Sljedeći popis pruža realističnu donju granicu za početak.

  • Hardver: Minimalno 2-jezgreni procesor, 4 GB RAM-a i 64 GB SSD-a. Za udobnu upotrebu preporučuje se 8 GB RAM-a i 256 GB SSD-a.
  • Operativni sustav: Ubuntu Server 24.04 LTS, Debian 12 ili slična Linux distribucija s dugom podrškom.
  • Mreža: Mogućnost dodjeljivanja fiksne lokalne IP adrese na modem ili router, po mogućstvu putem žične Ethernet veze.
  • Domena: Ako planirate vanjski pristup, potrebna vam je upravljiva domena. Za to možete koristiti Provjera domene i registracija.
  • Disk za sigurnosne kopije: USB disk, NAS ili udaljeni prostor za sigurnosne kopije.
  • Osnovno znanje o sigurnosti: SSH, jake lozinke, ažuriranja i pravila vatrozida.

Brzina učitavanja vaše kućne veze također je važna. Na primjer, brzina učitavanja od 20 Mbps može biti dovoljna za osobnu upotrebu i nekoliko korisnika. Međutim, za video strimove, dijeljenje velikih datoteka ili javne web aplikacije, to može biti nedovoljno. Također, neki pružatelji internetskih usluga koriste CGNAT, što može spriječiti preusmjeravanje portova. U tom slučaju potrebno je koristiti rješenja poput Cloudflare Tunnela, Tailscale-a, WireGuard-a ili obrnute tunel preko vanjskog VPS-a.

Usporedba Docker, Portainer i Klasične Instalacije

U upravljanju kućnim serverima često se koriste tri pristupa: instalacija aplikacija izravno na operativni sustav, korištenje virtualnih strojeva ili rad s Docker kontejnerima. Sljedeća tablica sažima praktične razlike.

Usporedba Docker, Portainer i Klasične Instalacije
PristupPrednostNedostatakZa Koga Je Prikladno?
Klasikna instalacijaJednostavna i jasna za jednostavne aplikacije.Visok rizik od sukoba ovisnosti i ažuriranja.Korisnici koji pokreću samo jednu uslugu.
Virtualni strojOsigurava snažnu izolaciju.Potreban veći RAM, CPU i disk.Oni koji žele izolirati različite operativne sustave.
Docker + PortainerLagan, prenosiv, brzo se ažurira i vizualno upravljiv.Potrebno je razumjeti logiku volumena, mreže i sigurnosti.Oni koji žele pokretati više self-hosted usluga.

Glavni razlog za korištenje Dockera i Portainera u ovom vodiču je omogućiti skalabilnost kućnog servera bez kompliciranja. Danas možete instalirati samo Nextcloud ili Jellyfin; sutra možete dodati Uptime Kuma, Vaultwarden, Gitea, AdGuard Home ili Home Assistant na istu mašinu.

1. Instalacija Operativnog Sustava i Osnovne Postavke

Prvi korak je napraviti čistu instalaciju Linuxa na vašem serveru. Ubuntu Server LTS nudi opsežnu dokumentaciju za početnike. Tijekom instalacije, omogućite opciju OpenSSH Server, što će olakšati upravljanje serverom s druge računala.

Nakon instalacije, fiksirajte lokalnu IP adresu servera. To možete učiniti na dva načina: definirati DHCP rezervaciju putem routera ili postaviti statičku IP adresu na Linuxu. Za početnike je sigurnije i lakše postaviti putem routera. Na primjer, dodajte fiksnu IP adresu poput 192.168.1.50 vašem serveru.

Zatim ažurirajte sustav. U terminalu možete izvršiti sljedeće naredbe: sudo apt update, sudo apt upgrade -y i sudo reboot. Ovaj korak izgleda jednostavno, ali predstavlja prvi sloj sigurnosti na serveru koji radi 24/7. Također, ispravite vremensku zonu servera, uklonite nepotrebne pakete i ostavite samo usluge koje su vam potrebne.

2. Instalacija Docker Engine-a

Za instalaciju Dockera možete koristiti službene repozitorije vaše distribucije, no korištenje Docker-ovih ažuriranih repozitorija obično donosi bolje rezultate. Na sustavima temeljenim na Ubuntu-u, preporučuju se službeni koraci za instalaciju Dockera. Osnovna logika je sljedeća: instalirate potrebne pakete, dodate Docker GPG ključ, definirate Docker repozitorij i instalirate docker-ce pakete.

Nakon instalacije, provjerite da li Docker servis radi. Logika naredbe je sljedeća: systemctl status docker. Ako se prikazuje kao aktivan, Docker je spreman. Za dodavanje svog korisnika u docker grupu koristite naredbu usermod -aG docker korisničko_ime. Nakon ovog postupka, potrebno je zatvoriti i ponovno otvoriti sesiju.

Važno je unaprijed razjasniti dva pojma dok radite s Docker-om. Image je izvršni paket aplikacije. Container je aktivni primjer koji radi iz ovog image-a. Volume osigurava trajnost podataka čak i kada se kontejner izbriše. Network određuje kako kontejneri komuniciraju jedni s drugima i vanjskim svijetom. Kada shvatite ova četiri pojma, lakše ćete razumjeti što radite u Portainer sučelju.

3. Instalacija Portainer-a

Portainer radi kao Docker kontejner. Stoga je pokretanje Portainer-a nakon instalacije Dockera vrlo jednostavno. Prvo se stvara volume za trajne podatke, a zatim se Portainer kontejner pokreće putem porta 9443. Uobičajena logika naredbe je: docker volume create portainer_data, a zatim pokrenuti Portainer Community Edition kontejner s portainer_data volumom.

Nakon instalacije, idite na https://IP-adresa-servera:9443 putem preglednika. Na prvom otvaranju bit ćete zatraženi da kreirate administratorskog korisnika. Postavite jaku lozinku; koristite lozinku od najmanje 16 znakova koja uključuje velika i mala slova, brojeve i simbole. Zatim, povežite svoju postojeću Docker instalaciju s Portainer-om putem opcije local Docker environment.

U Portainer panelu vidjet ćete odjeljke Containers, Images, Volumes, Networks i Stacks. Za početnike, najkorisniji odjeljak je Stacks, jer ovdje možete upravljati višelinijskim konfiguracijama sličnim docker compose-u. Držanje web sučelja aplikacije, baze podataka i mrežnih postavki pod jednim stackom osigurava dugoročnu organizaciju.

4. Struktura Mape i Plan Trajnosti Podataka

Jedna od najčešćih grešaka na kućnim serverima je nasumično raspoređivanje podataka aplikacija u mape. U početku to možda neće predstavljati problem; međutim, kada instalirate 10 različitih usluga, sigurnosno kopiranje i premještanje postaje teže. Stoga, koristite standardnu strukturu mape od prvog dana.

  • /opt/stacks: Za pohranjivanje vaših Portainer stack datoteka ili konfiguracija temeljenim na compose-u.
  • /srv/appdata: Za trajne mape postavki i podataka aplikacija.
  • /srv/media: Za medijske datoteke, fotografije ili dijeljeni sadržaj.
  • /srv/backups: Za privremeno pohranjivanje lokalnih sigurnosnih kopija.
  • /srv/logs: Za usluge za koje želite pohraniti vanjske logove.

Na primjer, možete stvoriti uredne mape kao što su /srv/appdata/vaultwarden za Vaultwarden, /srv/appdata/uptime-kuma za Uptime Kuma, ili /srv/appdata/jellyfin za Jellyfin. Tako ćete znati koji podaci pripadaju kojoj aplikaciji. Ciljanje samo /srv/appdata i potrebnih mapa medija s alatom za sigurnosne kopije bit će dovoljno u većini scenarija.

5. Instalacija Prve Usluge: Primjer Uptime Kuma

Uptime Kuma je dobar izbor kao prva usluga. Lagan je, lako se instalira i koristan je za praćenje drugih usluga. Idite na odjeljak Stacks u Portainer-u i stvorite novi stack. Ime stacka postavite na uptime-kuma. Definirajte Uptime Kuma image, port 3001 i trajno povezivanje volumena. Zatim pokrenite uslugu putem opcije Deploy the stack.

Nakon instalacije, otvorite http://IP-adresa-servera:3001. Kreirajte prvog korisnika i dodajte usluge koje želite pratiti. Na primjer, za Portainer možete unijeti https://IP-adresa-servera:9443, sučelje routera, svoju osobnu web stranicu ili vanjski Hostragons server. Ova mala usluga djeluje kao rani sustav upozorenja za rad kućnog servera.

Osnovna lekcija iz ovog primjera je sljedeća: za svaki kontejner trebate svjesno postaviti port, volume i environment opcije. Korištenje nasumičnih portova može dovesti do sukoba u budućnosti. Uobičajena praksa je dokumentirati usluge i zadržati malu bilješku o tome koji port pripada kojoj usluzi.

6. Domena, DNS i Pristup s Kuće

Ako planirate koristiti svoj kućni server samo unutar lokalne mreže, domena nije obavezna. Međutim, ako želite vanjski pristup, korištenje domene olakšava upravljanje. Na primjer, možete definirati poddomene poput panel.primjer-domena.com, uptime.primjer-domena.com i cloud.primjer-domena.com. Za upravljanje domenom možete razmotriti usluga registracije domene i za više informacija o DNS postavkama Vodič za upravljanje DNS-om.

Postoje tri osnovna načina za vanjski pristup. Prvi je preusmjeravanje portova. Na routeru preusmjeravate portove 80 i 443 na vaš kućni server. Drugi je pristup putem VPN-a; osiguravate da samo ovlašteni uređaji mogu pristupiti. Treći su tunelske usluge; čak i ako ste iza CGNAT-a, mogu omogućiti vanjski pristup. U pogledu sigurnosti, bolje je ne otvarati upravljačke panele izravno na internetu, već koristiti VPN ili ograničenje IP adresa.

Na DNS strani, A zapis preusmjerava vašu domenu na vanjsku IP adresu vaše kućne internetske veze. Ako se vaša IP adresa mijenja, potrebna vam je dinamička DNS usluga. Neki routeri podržavaju ovo; ako ne, možete koristiti male DDNS klijente koji rade na Dockeru. U profesionalnim projektima, fiksna IP adresa, cloud server ili upravljani hosting će dati stabilnije rezultate.

7. HTTPS i Logika Obrnutog Proxya

7. HTTPS i Logika Obrnutog Proxya

Za objavljivanje više web usluga putem jedne IP adrese koristi se obrnuti proxy. Obrnuti proxy usmjerava dolazne zahtjeve na ispravni kontejner prema imenu domene. Na primjer, cloud.primjer-domena.com usmjerava se na Nextcloud, monitor.primjer-domena.com na Uptime Kuma, a portainer.primjer-domena.com na Portainer. Ova struktura je i uredna i sigurna.

Za kućne servere često se biraju Nginx Proxy Manager, Caddy ili Traefik. Možete instalirati jedan od njih kao stack putem Portainer-a. Za početnike, Nginx Proxy Manager je jednostavan zbog vizualnog sučelja. Unosite domenu, ciljnu IP adresu i port; možete automatski dobiti SSL certifikat putem Let's Encrypt-a.

Što se tiče HTTPS-a, važno je obratiti pažnju na obnavljanje certifikata i ispravna preusmjeravanja. Ako imate web stranice ili domene hostane na Hostragons-u, stranica Rješenja za SSL certifikate može biti korisna za upravljanje SSL-om i sigurnim vezama. Besplatni certifikati na kućnim serverima obično su dovoljni za većinu osobnih upotreba; međutim, u strukturama koje sadrže poslovne ili korisničke podatke, profesionalni SSL, logiranje, sigurnosne kopije i politike pristupa trebaju se planirati ozbiljnije.

8. Sigurnost: Što Trebate Učiniti na Kućnom Serveru

Self-hosting pruža slobodu, ali također donosi odgovornost. Ako je vaš kućni server povezan s internetom, čak i pogrešno konfigurirana usluga može predstavljati rizik. Stoga sigurnost trebate razmatrati ne na kraju, već na početku postavljanja.

  • Koristite pristup temeljen na ključevima umjesto lozinke za SSH i onemogućite root pristup.
  • Upravljačku ploču Portainer-a držite, ako je moguće, iza VPN-a; ne otvarajte je na internetu.
  • Za svaku uslugu koristite jedinstvene, jake lozinke i, ako je podržano, uključite dvostruku autentifikaciju.
  • Zatvorite nepotrebne portove. Samo portovi 80, 443 i stvarno potrebni portovi trebaju ostati otvoreni.
  • Preuzmite Docker image-ove iz pouzdanih izvora i redovito ih ažurirajte.
  • Nemojte davati nepotrebna privilegirana prava kontejnerima.
  • Nemojte objavljivati servise baze podataka izravno na internetu.
  • Koristite vatrozid. UFW ili pravila sigurnosti na routeru su dovoljna za početak.

Osim toga, možete ograničiti pokušaje brute-force napada pomoću alata poput fail2ban, CrowdSec ili sličnih. Međutim, sigurnosni alati ne mogu nadomjestiti pogrešnu arhitekturu. Najbolji pristup je učiniti upravljačke sučelje dostupnim samo putem VPN-a i objavljivati javne usluge putem ograničenog obrnuto proxy-a.

9. Strategija Sigurnosnih Kopija: Pravilo 3-2-1

Mnogi koji postavljaju kućni server shvate važnost sigurnosnih kopija tek nakon prvog gubitka podataka. Ipak, planiranje jednostavne strategije od samog početka je mnogo lakše. Pravilo 3-2-1 je dobar početak: neka vaši podaci imaju 3 kopije, pohranjene u 2 različita okruženja, i 1 kopija neka bude na drugačijoj lokaciji.

Praktičan primjer: Glavni podaci nalaze se u /srv/appdata. Svake noći se automatski pravite kopije na lokalni USB disk. Jednom tjedno se izrađuje šifrirana udaljena sigurnosna kopija. Udaljeni cilj može biti cloud prostor, NAS na drugoj lokaciji ili VPS. U kritičnim web projektima, Rješenja za hosting s sigurnosnom kopijom nude sigurnije opcije.

U sigurnosnim kopijama samo kopiranje datoteka možda neće biti dovoljno. U uslugama koje koriste baze podataka, redovito uzimanje dump-ova je potrebno. Na primjer, aplikacije koje koriste PostgreSQL ili MariaDB trebaju imati odvojene sigurnosne kopije baze podataka. Također, testirajte da li se sigurnosna kopija može zaista vratiti. Provođenje malog pokušaja vraćanja jednom mjesečno može pretvoriti papirnati plan sigurnosnih kopija u stvarnu sigurnost.

10. Rutina Ažuriranja i Održavanja

Održavanje Docker temeljenog kućnog servera može biti lakše od klasičnih instalacija, no ne smije se potpuno automatizirati. Odredite mjesečni dan za održavanje. Prvo napravite sigurnosnu kopiju, zatim ažurirajte operativni sustav, a potom ažurirajte image-ove kontejnera. Ažuriranje slika i ponovna distribucija stack-a mogu se lako izvršiti putem Portainer-a.

Mogu se koristiti alati za automatsko ažuriranje poput Watchtower-a; međutim, automatsko ažuriranje za svaku uslugu nije sigurno. Osobito je bolje pročitati bilješke o verzijama za usluge poput baza podataka, upravitelja lozinki ili kritičnih cloud usluga. Male nadzorne alate ili testne usluge mogu se automatski ažurirati; dok se kritične usluge trebaju ažurirati kontrolirano.

U svoju rutinu održavanja uključite i provjeru zdravlja diska. Kada je popunjenost SSD-a veća od 80%, to može utjecati na performanse i stabilnost. Ograničite rast log datoteka. Očistite neiskorištene Docker slike i kontejnere. Provjerite volumene u Portainer-u prije nego što izbrišete neiskorištene; brisanje krivog volumena može dovesti do gubitka podataka.

Preporučene Self-Hosted Usluge

Kada je vaš kućni server spreman, koje ćete usluge postaviti ovisi o vašim potrebama. Sljedeće usluge su popularne u Docker ekosustavu i imaju aktivnu zajednicu.

  • Uptime Kuma: Praćenje usluga i izrada statusne stranice.
  • Vaultwarden: Lagani upravitelj lozinki kompatibilan s Bitwarden-om.
  • Jellyfin: Osobni medijski server.
  • Nextcloud: Synchronizacija datoteka i osobni cloud.
  • Gitea ili Forgejo: Osobni Git server.
  • AdGuard Home: Filtriranje oglasa i DNS na razini mreže.
  • Home Assistant: Automatizacija pametnog doma.
  • Paperless-ngx: Arhiviranje dokumenata i njihovo pretraživanje s OCR-om.

Na početku, pokušajte ne instalirati više od tri kritične usluge. Prvo postavite Docker, Portainer, sigurnosne kopije i obrnuti proxy. Nakon toga povećajte broj usluga. Ovaj pristup olakšava učenje sustava i pojednostavljuje otklanjanje grešaka.

Kada je Kućni Server Dovoljan, a Kada je Potreban Hosting?

Kućni server je idealan za osobnu upotrebu, učenje, hobi projekte, dijeljenje medija unutar obitelji i male automatizacije. Međutim, za web stranice koje imaju korisnički promet, e-trgovinu, korporativne e-mailove, aplikacije koje zahtijevaju visoku dostupnost ili podatke koji nose pravnu odgovornost, kućni okruženje može biti ograničeno.

Na kućnim internet vezama postoje rizici poput prekida napajanja, promjene IP adrese, ograničenja učitavanja i hardverskih kvarova. S druge strane, profesionalni hosting nudi infrastrukturu podatkovnog centra, redundantnu mrežu, bolju dostupnost i podršku. Stoga, korištenje kućnog servera za učenje i osobne usluge, dok se za javne, profitne ili projekte koji obrađuju korisničke podatke koriste usluge korporativnog hostinga, iznajmljivanje VPS servera ili SSL certifikati predstavlja uravnoteženiju strategiju.

Kratka Provjera Liste

  • Linux server je ažuran i ima dodijeljenu fiksnu lokalnu IP adresu.
  • Docker Engine radi i korisničke privilegije su ispravno konfigurirane.
  • Portainer je instaliran s jakom lozinkom i, ako je moguće, dostupan je samo iz lokalne mreže ili putem VPN-a.
  • Podaci usluga su povezani s trajnim volumenima u strukturi mapa.
  • Postavke obrnutog proxy-a, DNS-a i HTTPS-a su testirane.
  • Pravila vatrozida su jednostavna i nepotrebni portovi su zatvoreni.
  • Plan sigurnosnih kopija je postavljen i testirano je vraćanje.
  • Mjesečna rutina održavanja za ažuriranje, čišćenje logova i provjeru diska je postavljena.

Česta Pitanja

Da li je potrebna snažna računala za postavljanje kućnog servera koristeći Docker i Portainer?

Ne. Za početak, 2-jezgreni procesor, 4 GB RAM-a i SSD su dovoljni. Međutim, ako planirate koristiti usluge kao što su Nextcloud, Jellyfin ili više baza podataka, 8 GB RAM-a i veći SSD će pružiti udobnije iskustvo.

Da li je sigurno otvoriti kućni server za internet?

Ako se ispravno konfigurira, može biti siguran; međutim, rizik se ne može potpuno eliminirati. Temeljni sigurnosni zahtjevi uključuju ne otvaranje upravljačkih panela izravno na internetu, korištenje VPN-a, objavljivanje samo potrebnih portova, korištenje HTTPS-a i redovito ažuriranje.

Da li mogu raditi self-hosting ako sam iza CGNAT-a?

Da, možete. CGNAT može ometati preusmjeravanje portova; međutim, možete pristupiti svojim uslugama putem Tailscale-a, WireGuard-a, Cloudflare Tunnela ili obrnute tunela preko vanjskog VPS-a.

Da li je Portainer obavezan, ili su Docker komande dovoljne?

Portainer nije obavezan; sve se može upravljati putem Docker komandi i compose datoteka. Međutim, Portainer olakšava vizualno upravljanje kontejnerima, zapisima, volumenima i skupovima, posebno za nove korisnike.

Da li da izaberem kućni server ili profesionalni hosting?

Kućni server je vrlo pogodan za osobnu upotrebu, učenje i hobi projekte. Profesionalni hosting, VPS i upravljani SSL rješenja su bolji izbor za projekte koji uključuju korisničke podatke, visoki promet, e-trgovinu ili zahtijevaju neprekidni pristup.

Kratki Sažetak i Sljedeći Korak

Postavljanje vlastitog kućnog servera koristeći samo Docker i Portainer; s pravim hardverom, čistom instalacijom Linuxa, urednom strukturom volumena, sigurnim pristupom, HTTPS-om i planom sigurnosnih kopija predstavlja održiv projekt. Za najbolje rezultate, počnite polako, pažljivo pratite svoje prve usluge i obavezno pravite sigurnosne kopije svojih podataka. Dok se vaše osobne usluge razvijaju na kućnom serveru, možete istražiti Hostragonsove rješenja za domene, SSL, hosting i VPS, planirajući prijelaz na jaču infrastrukturu za javne i kritične projekte.

Podijelite ovaj post:

Hostragons tim

Aktualni vodiči našeg stručnog tima za hosting, poslužitelje i domene. Pronađimo zajedno pravo rješenje za vaš projekt.

Kontaktirajte nas