Instalacija i konfiguracija Portainer CE | INTROSERV
EUR
european

EUR

usa

USD

Croatia Hr
Ex. VAT Ex. VAT 0%

Instalacija i konfiguracija Portainer CE

Razina: Početnik
Vrijeme za dovršetak: ~30 minuta

Cilj: Nakon završetka ovog vodiča, imat ćete potpuno konfiguriran Portainer CE panel osiguran s HTTPS-om i spreman za upravljanje Docker infrastrukturom vašeg poslužitelja.

Uvod

Docker-bazirana containerizacija postala je standard za poslužiteljsku infrastrukturu, osiguravajući predvidljivo postavljanje i učinkovito skaliranje usluga. Međutim, kada se pokreće desetke kontejnera, upravljanje njima isključivo putem naredbenog retka postaje nezgodno. Portainer CE rješava ovaj problem pružajući korisnički prijateljsko web sučelje za Docker administraciju: omogućuje pristup svim kontejnerima, njihovim statusima, zapisima i resursima, a upravljanje se obavlja u nekoliko klikova bez gubitka kontrole nad sustavom.

Priprema poslužitelja

Prije instalacije potrebno je osigurati da je poslužitelj spreman za postavljanje Portainera. Sam Portainer radi kao kontejner, pa je potrebno instalirati samo Docker.

Sistemski zahtjevi

  • Operativni sustav: Bilo koja Linux distribucija (Ubuntu 20.04+, Debian 11+, CentOS/Rocky Linux 8+) korištena u hostingu.
  • Privilegije: root pristup ili mogućnost izvršavanja naredbi putem sudo.
  • Hardverski zahtjevi: Minimalno 1 GB RAM-a i 10 GB slobodnog prostora na disku.
  • Mrežni zahtjevi: Otvoreni portovi 8000 i 9443 za pristup Portaineru, port 443 za konfiguraciju reverznog proxyja.

Provjera dostupnosti Dockera

Povežite se s poslužiteljem putem SSH-a. Prije svega, provjerite je li Docker instaliran i radi li daemon:

docker --version sudo systemctl status docker

Ako se prikazuje verzija Dockera i status je aktivan (radi), korak instalacije Dockera može se preskočiti.

Instalacija Dockera (ako je potrebno)

Na novim poslužiteljima Docker obično nije prisutan. Da biste ga instalirali, pokrenite 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 instalaciju Docker Compose dodatka (ako nije instaliran u prethodnom koraku), pokrenite:

sudo apt-get install docker-compose-plugin # Za Debian/Ubuntu # ili sudo dnf install docker-compose-plugin # Za CentOS/Rocky Linux

Provjerite verziju instaliranog docker compose:

docker compose version

Postavljanje Portainer CE u Dockeru

Postoje dva glavna načina za pokretanje Portainera: putem naredbe docker run (brzi početak) i putem docker-compose.yml (pogodno za verzioniranje konfiguracije).

Metoda 1: Pokretanje putem docker run

Pokrenite sljedeću naredbu na poslužitelju:

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

Info

Naredba se pokreće putem sudo jer trenutni korisnik još nije dodan u docker grupu. Ako planirate koristiti docker bez sudo kasnije, dodajte korisnika u docker grupu: sudo usermod -aG docker $USER. Nakon izvršavanja naredbe, trebate se odjaviti i ponovno prijaviti ili ponovno pokrenuti sesiju.

Objašnjenje parametara:

  • -d – Pokreni kontejner u pozadini.
  • -p 8000:8000 – Prosljeđivanje porta za Edge agente i tunele.
  • -p 9443:9443 – Prosljeđivanje porta za osigurano web sučelje (HTTPS). Portainer automatski generira samopotpisani SSL certifikat.
  • --name portainer – Dodjeljuje smisleno ime kontejneru.
  • --restart=always – Politika automatskog ponovnog pokretanja kontejnera u slučaju kvarova ili ponovnog pokretanja poslužitelja.
  • -v /var/run/docker.sock:/var/run/docker.sock – Montira Docker socket unutar Portainer kontejnera. Ovo omogućuje Portaineru interakciju i upravljanje Docker daemon-om na hostu.
  • -v portainer_data:/data – Stvara imenovani volumen za pohranu Portainer podataka (korisnici, postavke, konfiguracije veza).
  • portainer/portainer-ce:latest – Slika s najnovijom stabilnom verzijom Community Edition.

Metoda 2: Pokretanje putem docker-compose

Da biste koristili ovu metodu, stvorite direktorij i docker-compose.yml datoteku:

mkdir ~/portainer-docker cd ~/portainer-docker nano docker-compose.yml

Umetnite sljedeći sadržaj:

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:

Spremite datoteku i pokrenite naredbu:

docker compose up -d

Početno pokretanje i postavljanje web sučelja

Nakon pokretanja Portainer kontejnera, on postaje dostupan putem mreže.

Korak 1. Povezivanje s web sučeljem

Otvorite preglednik i idite na: https://<IP-adresa-poslužitelja>:9443.

Info

Zbog korištenja samopotpisanog certifikata, preglednik će prikazati upozorenje. Ovo je normalno za prvo pokretanje. Morate nastaviti na stranicu (na primjer, kliknite "Prihvati rizik" ili "Nastavi na stranicu").

Korak 2. Kreiranje korisnika

Na stranici za registraciju, morat ćete navesti korisničko ime (preporučuje se admin) i postaviti jaku lozinku.

Tip

Lozinka mora biti složena jer omogućuje potpuni pristup upravljanju kontejnerima.

Korak 3. Povezivanje okruženja

Nakon kreiranja korisnika, Portainer će vas zatražiti da povežete okruženja. U ovoj fazi možete ili povezati lokalni Docker (već dostupan zahvaljujući montiranom socketu) ili nastaviti s dodavanjem udaljenih okruženja putem gumba "Add Environments". Udaljena okruženja su korisna kada trebate upravljati s više poslužitelja iz jednog Portainer sučelja: na primjer, dodavanje Docker hostova u različitim podatkovnim centrima ili poslužitelja s Kubernetesom. Povezivanje se vrši putem Portainer agenata ili putem API-ja koristeći TLS certifikate.

  • Odaberite opciju "Get Started". Ovo je osnovni scenarij za jedan poslužitelj.
  • Portainer će automatski detektirati lokalni Docker socket. Bit će prikazan kao "local".
  • Kliknite na njega kako biste dovršili postavljanje.

Postavljanje je dovršeno. Portainer nadzorna ploča (glavni ekran) će se otvoriti s kratkim statistikama o kontejnerima, slikama, volumenima i mrežama.

Glavne značajke Portainera

Pogledajmo glavne sekcije sučelja koje se koriste za svakodnevne administrativne zadatke.

Nadzorna ploča

Početni ekran koji prikazuje opću sliku: broj pokrenutih i zaustavljenih kontejnera, broj preuzetih slika. Omogućuje brzo procjenjivanje stanja poslužitelja.

Kontejneri

  • Središnja sekcija za upravljanje. Prikazuje popis svih kontejnera.
  • Upravljanje kontejnerima: Pokreni, zaustavi, ponovno pokreni, izbriši kontejner jednim klikom.
  • Zapisnici: Kartica "Logs" omogućuje pristup pregledavanju zapisnika kontejnera u stvarnom vremenu.
  • Inspect: Prikazuje potpune informacije o kontejneru u JSON formatu: varijable okruženja, točke montiranja, mrežne postavke.
  • Statistika: Grafovi potrošnje CPU-a, memorije i mreže za svaki kontejner. Pomaže u određivanju potrošnje resursa po pojedinačnim uslugama.
  • Exec konzola: Mogućnost otvaranja web terminala unutar kontejnera za izvršavanje naredbi.

Stogovi

Implementacija Docker Compose u web sučelju. Omogućuje prijenos ili kreiranje YAML datoteka izravno putem preglednika za postavljanje aplikacija s više kontejnera.

Slike

  • Upravljanje Docker slikama.
  • Povlačenje: Mogućnost preuzimanja slika (npr. nginx:latest ili mysql:8.0) izravno iz sučelja.
  • Uklanjanje: Čišćenje neiskorištenih slika za oslobađanje prostora na disku.

Volumeni

Upravljanje volumenima za trajne podatke. Prikazuje postojeće volumene, njihovu povezanost s kontejnerima i prostor koji zauzimaju. Kritično važno za baze podataka i korisničke podatke.

Mreže

Omogućuje stvaranje izoliranih mreža za interakciju kontejnera.

Povratak promjena (Uklanjanje Portainera)

Ako trebate potpuno ukloniti Portainer i njegove podatke s poslužitelja, slijedite ove korake:

1. Zaustavite i uklonite Portainer kontejner:

sudo docker stop portainer sudo docker rm portainer

2. Uklonite Portainer volumen podataka (upozorenje: ova radnja je nepovratna):

sudo docker volume rm portainer_data

Tip

Brisanje portainer_data volumena dovest će do nepovratnog gubitka svih korisnika, postavki i konfiguracija Portainera.

3. Uklonite Portainer sliku (opcionalno):

sudo docker rmi portainer/portainer-ce:latest

Sigurnost i preporuke

Za produkciju je potrebna dodatna sigurnosna konfiguracija Portainera.

Korištenje reverznog proxyja (Nginx/Apache)

Preporučuje se postavljanje poddomene (npr. portainer.domain.com) i prosljeđivanje prometa putem Nginxa. Ovo će omogućiti:

  • Korištenje valjanog SSL certifikata (besplatnog od Let's Encrypt ili plaćenog SSL-a, npr. od Sectigo).
  • Centralizirano bilježenje pristupa.
  • Mogućnost postavljanja dodatne autentifikacije.

1. Instalacija i konfiguracija Nginxa

Instalirajte Nginx:

sudo apt install -y nginx # Za Debian/Ubuntu # ili sudo dnf install -y nginx # Za CentOS/Rocky Linux

Kreirajte konfiguracijsku datoteku za Portainer:

sudo nano /etc/nginx/sites-available/portainer.conf

Dodajte sljedeću konfiguraciju, zamjenjujući <YOUR_DOMAIN> s vašom domenom koja pokazuje na IP poslužitelja:

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; # Vrijeme čekanja za duge operacije proxy_connect_timeout 600; proxy_send_timeout 600; proxy_read_timeout 600; send_timeout 600; } }

Aktivirajte konfiguraciju:

sudo ln -s /etc/nginx/sites-available/portainer.conf /etc/nginx/sites-enabled/

Provjerite Nginx konfiguraciju:

sudo nginx -t

Ako je provjera uspješna, ponovno pokrenite Nginx:

sudo systemctl restart nginx

2. Postavljanje HTTPS-a (preporučeno)

Instalirajte Certbot:

sudo apt install -y certbot python3-certbot-nginx

Nabavite SSL certifikat:

sudo certbot --nginx -d

Zamijenite <YOUR_DOMAIN> s vašom domenom.

Tijekom instalacije unesite svoj email, na primjer, admin@<YOUR_DOMAIN>, zatim pritisnite Y dvaput.

Provjerite automatsko obnavljanje certifikata:

sudo systemctl list-timers | grep certbot

Konfiguracija vatrozida

Izravan pristup Portainer portovima treba biti ograničen. Dopustite pristup portovima 8000 i 9443 samo s pouzdanih IP adresa.

Tip

Budite oprezni s pravilima vatrozida. Neispravna konfiguracija može blokirati vaš pristup poslužitelju.

Primjer za UFW:

sudo ufw allow from 192.168.1.0/24 to any port 9443 proto tcp sudo ufw deny 9443

Gdje je 192.168.1.0/24 mreža pouzdanih IP adresa.

Redovita ažuriranja

Preporučuje se pratiti izdavanje novih verzija Portainera i pravovremeno ažurirati kontejner kako bi se uklonile potencijalne ranjivosti.

Provjera rada

Da biste provjerili radi li Portainer ispravno, izvršite sljedeće radnje.

1. Vizualna provjera: U sekciji "Containers", provjerite ima li portainer kontejner status pokretanja.

2. Kreiranje testnog kontejnera:

  • Idite u sekciju "Containers", kliknite gumb "Add container".
  • U polje "Name" unesite test-nginx.
  • U polje "Image" unesite nginx:alpine.
  • U sekciji "Port mapping" unesite host port 8080, container port 80.
  • Kliknite "Deploy the container".

3. Provjera dostupnosti:

  • Pričekajte da se kontejner pojavi na popisu sa statusom pokretanja.
  • Otvorite preglednik i idite na http://<YOUR_IP_ADDRESS>:8080. Trebala bi se prikazati Nginx početna stranica.

4. Provjera upravljanja:

  • U Portaineru pronađite test-nginx kontejner i kliknite gumb "Stop".
  • Osvježite Nginx stranicu u pregledniku – pristup bi trebao biti nedostupan.
  • Kliknite "Start" – pristup stranici bi trebao biti vraćen.

Rješavanje problema

Problem 1: Ne mogu otvoriti Portainer web sučelje na https://<YOUR_IP_ADDRESS>:9443

Mogući uzrok: Vatrozid blokira port 9443.

Rješenje: Provjerite pravila vatrozida i osigurajte da je port otvoren. Za UFW: sudo ufw status | grep 9443.

Problem 2: Pogreška "Cannot connect to the Docker daemon" prilikom pokretanja Docker naredbi.

Mogući uzrok: Docker daemon ne radi ili korisnik nema dopuštenja.

Rješenje: Pokrenite daemon: sudo systemctl start docker. Ako ste dodali korisnika u docker grupu, odjavite se i ponovno prijavite.

Problem 3: Portainer kontejner se ne pokreće i odmah izlazi (status exited).

Mogući uzrok: Sukob porta ili oštećena slika.

Rješenje: Provjerite je li port 9443 zauzet od strane druge aplikacije: sudo ss -tulpn | grep 9443. Pokušajte ponovno dodijeliti port i ponovno pokrenuti kontejner: sudo docker restart portainer.

Zaključak

Portainer CE pruža učinkovit alat za vizualno praćenje i upravljanje Docker kontejnerima. Mogućnost brzog procjenjivanja statusa kontejnera, analize grafova potrošnje resursa i obavljanja tipičnih operacija bez povezivanja putem SSH-a smanjuje vrijeme reakcije na incidente i pojednostavljuje svakodnevnu administraciju.

Ovaj alat može biti koristan kada je potrebno omogućiti ograničen pristup upravljanju kontejnerima za developere ili manje iskusno osoblje bez davanja izravnog pristupa naredbenom retku poslužitelja. Portainer CE je standardno rješenje za vizualizaciju container infrastrukture i preporučuje se za korištenje na poslužiteljima.

Verzija dokumenta: 1.1
Zadnje ažurirano: ožujak 2026
Vlasnik: Tim za tehničku dokumentaciju

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA