Namestitev in konfiguracija Portainer CE
Raven: Začetnik
Čas za dokončanje: ~30 minut
Cilj: Po zaključku tega vodnika boste imeli popolnoma konfiguriran Portainer CE panel, zavarovan s HTTPS in pripravljen za upravljanje Docker infrastrukture vašega strežnika.
Uvod
Kontejnerizacija na osnovi Dockerja je postala standard za strežniško infrastrukturo, saj zagotavlja predvidljivo uvajanje in učinkovito skaliranje storitev. Vendar pa postane upravljanje več deset kontejnerjev zgolj prek ukazne vrstice neprijetno. Portainer CE rešuje ta problem z zagotavljanjem uporabniku prijaznega spletnega vmesnika za administracijo Dockerja: omogoča dostop do vseh kontejnerjev, njihovih statusov, dnevnikov in virov, upravljanje pa se izvaja z nekaj kliki brez izgube nadzora nad sistemom.
Priprava strežnika
Pred namestitvijo je potrebno zagotoviti, da je strežnik pripravljen za uvajanje Portainerja. Portainer sam deluje kot kontejner, zato je potrebno namestiti le Docker.
Sistemske zahteve
- Operacijski sistem: Katerakoli distribucija Linuxa (Ubuntu 20.04+, Debian 11+, CentOS/Rocky Linux 8+), ki se uporablja v gostovanju.
- Pravice: dostop do root ali možnost izvajanja ukazov prek sudo.
- Strojne zahteve: najmanj 1 GB RAM in 10 GB prostega prostora na disku.
- Mrežne zahteve: odprti vrata 8000 in 9443 za dostop do Portainerja, vrata 443 za konfiguracijo povratnega proxyja.
Preverjanje razpoložljivosti Dockerja
Povežite se s strežnikom prek SSH. Najprej preverite, ali je Docker nameščen in ali je demon aktiven:
docker --version sudo systemctl status docker
Če je prikazana različica Dockerja in je status aktiven (teče), lahko preskočite korak namestitve Dockerja.
Namestitev Dockerja (če je potrebno)
Na novih strežnikih Docker običajno ni prisoten. Za namestitev zaženite standardni skript (za Debian/Ubuntu):
curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh sudo systemctl enable docker sudo systemctl start docker
Za namestitev vtičnika Docker Compose (če ni bil nameščen v prejšnjem koraku), zaženite:
sudo apt-get install docker-compose-plugin # Za Debian/Ubuntu # ali sudo dnf install docker-compose-plugin # Za CentOS/Rocky Linux
Preverite različico nameščenega docker compose:
docker compose version
Uvajanje Portainer CE v Dockerju
Obstajata dva glavna načina za zagon Portainerja: prek ukaza docker run (hiter začetek) in prek docker-compose.yml (priročno za verzioniranje konfiguracije).
Metoda 1: Zagon prek docker run
Zaženite naslednji ukaz na strežniku:
sudo docker run -d \ -p 8000:8000 \ -p 9443:9443 \ --name portainer \ --restart=always \ -v /var/run/docker.sock:/var/run/docker.sock \ -v portainer_data:/data \ portainer/portainer-ce:latest
Ukaz se izvaja prek sudo, ker trenutni uporabnik še ni bil dodan v skupino docker. Če nameravate kasneje uporabljati docker brez sudo, dodajte uporabnika v skupino docker: sudo usermod -aG docker $USER. Po izvedbi ukaza se morate odjaviti in ponovno prijaviti ali znova zagnati sejo.
Pojasnilo parametrov:
- -d – Zaženi kontejner v ozadju.
- -p 8000:8000 – Posredovanje vrat za Edge agente in tunele.
- -p 9443:9443 – Posredovanje vrat za zavarovan spletni vmesnik (HTTPS). Portainer samodejno generira samopodpisano SSL potrdilo.
- --name portainer – Dodeli smiselno ime kontejnerju.
- --restart=always – Politika samodejnega ponovnega zagona kontejnerja v primeru napak ali ponovnega zagona strežnika.
- -v /var/run/docker.sock:/var/run/docker.sock – Montira Docker vtičnico znotraj Portainer kontejnerja. To omogoča Portainerju interakcijo in upravljanje Docker demona na gostitelju.
- -v portainer_data:/data – Ustvari imenovan volumen za shranjevanje podatkov Portainerja (uporabniki, nastavitve, konfiguracije povezav).
- portainer/portainer-ce:latest – Slika z najnovejšo stabilno različico Community Edition.
Metoda 2: Zagon prek docker-compose
Za uporabo te metode ustvarite imenik in datoteko docker-compose.yml:
mkdir ~/portainer-docker cd ~/portainer-docker nano docker-compose.yml
Vstavite naslednjo vsebino:
services: portainer: image: portainer/portainer-ce:latest container_name: portainer restart: always ports: - "8000:8000" - "9443:9443" volumes: - /var/run/docker.sock:/var/run/docker.sock - portainer_data:/data volumes: portainer_data:
Shranite datoteko in zaženite ukaz:
docker compose up -d
Prvi zagon in nastavitev spletnega vmesnika
Ko je Portainer kontejner zagnan, postane dostopen prek omrežja.
Korak 1. Povezovanje s spletnim vmesnikom
Odprite brskalnik in pojdite na: https://<IP-naslov-strežnika>:9443.
Zaradi uporabe samopodpisanega potrdila bo brskalnik prikazal opozorilo. To je normalno za prvi zagon. Nadaljevati morate na stran (na primer, kliknite "Sprejmi tveganje" ali "Nadaljuj na stran").

Korak 2. Ustvarjanje uporabnika
Na registracijski strani boste morali določiti uporabniško ime (priporočeno je admin) in nastaviti močno geslo.
Geslo mora biti kompleksno, saj omogoča popoln dostop do upravljanja kontejnerjev.
Korak 3. Povezovanje okolja
Po ustvarjanju uporabnika vas bo Portainer pozval, da povežete okolja. Na tej stopnji lahko povežete lokalni Docker (že na voljo zahvaljujoč montirani vtičnici) ali nadaljujete z dodajanjem oddaljenih okolij prek gumba "Add Environments". Oddaljena okolja so uporabna, ko morate upravljati več strežnikov iz enega vmesnika Portainer: na primer, dodajanje Docker gostiteljev v različnih podatkovnih centrih ali strežnikov s Kubernetes. Povezava se izvede prek Portainer agentov ali prek API-ja z uporabo TLS potrdil.
- Izberite možnost "Get Started". To je osnovni scenarij za en strežnik.

- Portainer bo samodejno zaznal lokalno Docker vtičnico. Prikazana bo kot "local".

- Kliknite nanjo, da dokončate nastavitev.
Nastavitev je končana. Odprl se bo nadzorni zaslon Portainerja (glavni zaslon) s kratkimi statistikami o kontejnerjih, slikah, volumnih in omrežjih.

Glavne funkcije Portainerja
Poglejmo si glavne odseke vmesnika, ki se uporabljajo za vsakodnevne administrativne naloge.
Nadzorna plošča
Začetni zaslon, ki prikazuje splošno sliko: število delujočih in ustavljenih kontejnerjev, število prenesenih slik. Omogoča hitro oceno stanja strežnika.
Kontejnerji
- Osrednji odsek za upravljanje. Prikazuje seznam vseh kontejnerjev.
- Upravljanje kontejnerjev: Zaženi, ustavi, znova zaženi, izbriši kontejner z enim klikom.
- Dnevniki: Zavihek "Logs" omogoča dostop do ogledovanja dnevnikov kontejnerjev v realnem času.
- Pregled: Prikazuje popolne informacije o kontejnerju v JSON formatu: okoljske spremenljivke, montažne točke, omrežne nastavitve.
- Statistika: Grafi porabe CPU, pomnilnika in omrežja za vsak kontejner. Pomaga določiti porabo virov posameznih storitev.
- Izvedba konzole: Možnost odpiranja spletnega terminala znotraj kontejnerja za izvajanje ukazov.
Skladi
Implementacija Docker Compose v spletnem vmesniku. Omogoča nalaganje ali ustvarjanje YAML datotek neposredno prek brskalnika za uvajanje večkontejnerskih aplikacij.
Slike
- Upravljanje Docker slik.
- Pridobivanje: Možnost prenosa slik (npr. nginx:latest ali mysql:8.0) neposredno iz vmesnika.
- Odstranjevanje: Čiščenje neuporabljenih slik za sprostitev prostora na disku.
Volumni
Upravljanje trajnih podatkovnih volumov. Prikazuje obstoječe volumne, njihovo pripetost na kontejnerje in prostor, ki ga zasedajo. Kritično pomembno za baze podatkov in uporabniške podatke.
Omrežja
Omogoča ustvarjanje izoliranih omrežij za interakcijo kontejnerjev.
Vračanje sprememb (Odstranjevanje Portainerja)
Če morate popolnoma odstraniti Portainer in njegove podatke s strežnika, sledite tem korakom:
1. Ustavite in odstranite Portainer kontejner:
sudo docker stop portainer sudo docker rm portainer
2. Odstranite Portainer podatkovni volumen (opozorilo: to dejanje je nepopravljivo):
sudo docker volume rm portainer_data
Brisanje portainer_data volumna bo povzročilo nepopravljivo izgubo vseh uporabnikov, nastavitev in konfiguracij Portainerja.
3. Odstranite Portainer sliko (neobvezno):
sudo docker rmi portainer/portainer-ce:latest
Varnost in priporočila
Za produkcijo je potrebna dodatna varnostna konfiguracija Portainerja.
Uporaba povratnega proxyja (Nginx/Apache)
Priporočljivo je nastaviti poddomeno (npr. portainer.domain.com) in usmerjati promet prek Nginxa. To bo zagotovilo:
- Uporabo veljavnega SSL potrdila (brezplačno od Let's Encrypt ali plačljivo SSL, npr. od Sectigo).
- Centralizirano beleženje dostopa.
- Možnost konfiguracije dodatne avtentikacije.
1. Namestitev in konfiguracija Nginxa
Namestite Nginx:
sudo apt install -y nginx # Za Debian/Ubuntu # ali sudo dnf install -y nginx # Za CentOS/Rocky Linux
Ustvarite konfiguracijsko datoteko za Portainer:
sudo nano /etc/nginx/sites-available/portainer.conf
Dodajte naslednjo konfiguracijo, pri čemer zamenjajte <YOUR_DOMAIN> z vašo domeno, ki kaže na IP strežnika:
server { listen 80; server_name
; location / { proxy_pass https://localhost:9443; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection 'upgrade'; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_cache_bypass $http_upgrade; # Časovne omejitve za dolge operacije proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; } }
Aktivirajte konfiguracijo:
sudo ln -s /etc/nginx/sites-available/portainer.conf /etc/nginx/sites-enabled/
Preverite konfiguracijo Nginxa:
sudo nginx -t
Če je preverjanje uspešno, znova zaženite Nginx:
sudo systemctl restart nginx
2. Nastavitev HTTPS (priporočeno)
Namestite Certbot:
sudo apt install -y certbot python3-certbot-nginx
Pridobite SSL potrdilo:
sudo certbot --nginx -d
Zamenjajte <YOUR_DOMAIN> z vašo domeno.
Med namestitvijo vnesite svoj e-poštni naslov, na primer admin@<YOUR_DOMAIN>, nato dvakrat pritisnite Y.
Preverite samodejno obnovitev potrdila:
sudo systemctl list-timers | grep certbot
Konfiguracija požarnega zidu
Neposreden dostop do vrat Portainerja bi moral biti omejen. Dovolite dostop do vrat 8000 in 9443 samo iz zaupanja vrednih IP naslovov.
Bodite previdni pri pravilih požarnega zidu. Napačna konfiguracija lahko blokira vaš dostop do strežnika.
Primer za UFW:
sudo ufw allow from 192.168.1.0/24 to any port 9443 proto tcp sudo ufw deny 9443
Kjer je 192.168.1.0/24 podomrežje zaupanja vrednih IP naslovov.
Redne posodobitve
Priporočljivo je spremljati izdajo novih različic Portainerja in pravočasno posodobiti kontejner za odpravo morebitnih ranljivosti.
Preverjanje delovanja
Za preverjanje pravilnega delovanja Portainerja izvedite naslednje korake.
1. Vizualni pregled: V razdelku "Containers" se prepričajte, da ima portainer kontejner status "running".
2. Ustvarjanje testnega kontejnerja:
- Pojdite v razdelek "Containers", kliknite gumb "Add container".
- V polje "Name" vnesite test-nginx.
- V polje "Image" vnesite nginx:alpine.
- V razdelku "Port mapping" določite vrata gostitelja 8080, vrata kontejnerja 80.
- Kliknite "Deploy the container".
3. Preverjanje dostopnosti:
- Počakajte, da se kontejner prikaže na seznamu s statusom "running".
- Odprite brskalnik in pojdite na
http://<YOUR_IP_ADDRESS>:8080. Prikazana bi morala biti pozdravna stran Nginxa.
4. Preverjanje upravljanja:
- V Portainerju poiščite test-nginx kontejner in kliknite gumb "Stop".
- Osvežite stran Nginxa v brskalniku – dostop bi moral biti nedostopen.
- Kliknite "Start" – dostop do strani bi moral biti obnovljen.
Odpravljanje težav
Težava 1: Ne morem odpreti spletnega vmesnika Portainer na https://<YOUR_IP_ADDRESS>:9443
Možen vzrok: Požarni zid blokira vrata 9443.
Rešitev: Preverite pravila požarnega zidu in se prepričajte, da so vrata odprta. Za UFW: sudo ufw status | grep 9443.
Težava 2: Napaka "Cannot connect to the Docker daemon" pri izvajanju Docker ukazov.
Možen vzrok: Docker demon ne deluje ali uporabniku manjkajo dovoljenja.
Rešitev: Zaženite demon: sudo systemctl start docker. Če ste uporabnika dodali v skupino docker, se odjavite in ponovno prijavite.
Težava 3: Portainer kontejner se ne zažene in takoj izstopi (status exited).
Možen vzrok: Konflikt vrat ali poškodovana slika.
Rešitev: Preverite, ali so vrata 9443 zasedena z drugo aplikacijo: sudo ss -tulpn | grep 9443. Poskusite ponovno dodeliti vrata in znova zagnati kontejner: sudo docker restart portainer.
Zaključek
Portainer CE zagotavlja učinkovito orodje za vizualno spremljanje in upravljanje Docker kontejnerjev. Sposobnost hitrega ocenjevanja stanja kontejnerjev, analize grafov porabe virov in izvajanja tipičnih operacij brez povezovanja prek SSH zmanjšuje čas odziva na incidente in poenostavlja vsakodnevno administracijo.
To orodje je lahko uporabno, ko je potrebno zagotoviti omejen dostop do upravljanja kontejnerjev razvijalcem ali manj izkušenemu osebju brez dodeljevanja neposrednega dostopa do ukazne vrstice strežnika. Portainer CE je standardna rešitev za vizualizacijo kontejnerske infrastrukture in je priporočljiva za uporabo na strežnikih.
Različica dokumenta: 1.1
Zadnja posodobitev: marec 2026
Lastnik: Tehnična dokumentacijska ekipa