Namestitev Portainer CE v Dockerju za upravljanje kontejnerjev | INTROSERV
EUR
european

EUR

usa

USD

Slovenia Sl
Ex. VAT Ex. VAT 0%

Namestitev Portainer CE v Dockerju za upravljanje kontejnerjev

Raven: začetniki
Čas za izvedbo: ~30 minut
Cilj: Po zaključku tega vodnika boste imeli popolnoma konfiguriran nadzorni panel Portainer CE, zavarovan s protokolom HTTPS in pripravljen za upravljanje infrastrukture Docker na vašem strežniku. Po zaključku tega vodnika boste imeli popolnoma konfiguriran nadzorni panel Portainer CE, zavarovan s protokolom HTTPS in pripravljen za upravljanje infrastrukture Docker na vašem strežniku.

Uvod

Kontejnerizacija na podlagi Dockerja je postala standard za strežniško infrastrukturo, saj zagotavlja predvidljivo uvajanje in učinkovito prilagajanje storitev. Vendar pa je pri izvajanju več deset kontejnerjev njihovo upravljanje izključno prek ukazne vrstice postalo nepraktično. Portainer CE rešuje ta problem z uporabniku prijaznim spletnim vmesnikom za upravljanje Dockerja: omogoča dostop do vseh kontejnerjev, njihovih stanj, dnevnikov in virov, upravljanje pa se izvede z le nekaj kliki, ne da bi izgubili nadzor nad sistemom.

Priprava strežnika

Pred namestitvijo je treba zagotoviti, da je strežnik pripravljen za namestitev Portainerja. Portainer sam deluje kot kontejner, zato je treba namestiti le Docker.

Sistemske zahteve:

  • Operacijski sistem: katerakoli distribucija Linuxa (Ubuntu 20.04+, Debian 11+, CentOS/Rocky Linux 8+), ki se uporablja za gostovanje.
  • Privilegiji: dostop kot root ali možnost izvajanja ukazov prek sudo.
  • Zahteve glede strojne opreme: najmanj 1 GB RAM-a in 10 GB prostega prostora na disku.
  • Zahteve glede omrežja: Odprta 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 demon teče:

docker --version sudo systemctl status docker

Če se prikaže različica Dockerja in je stanje aktivno (teče), lahko preskočite korak namestitve Dockerja.

Namestitev Dockerja (če je potrebno)

Na novih strežnikih Docker običajno ni nameščen. 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 # For Debian/Ubuntu # or sudo dnf install docker-compose-plugin # For CentOS/Rocky Linux

Preverite različico nameščenega Docker Compose:

docker compose version

Namestitev Portainer CE v Dockerju

Obstajata dva glavna načina za zagon Portainerja: prek ukaza `docker run` (hiter zagon) in prek datoteke `docker-compose.yml` (primerno za upravljanje različic konfiguracije).

Metoda 1: Zagon prek »docker run«

Na strežniku izvedite naslednji ukaz:

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

Ukaz se izvede 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 ponovno zagnati sejo.

Pojasnilo parametrov:

  • -d – Kontejner se izvaja v ozadju.
  • -p 8000:8000 – Preusmeritev vrat za Edge agente in tunele.
  • -p 9443:9443 – Preusmeritev vrat za zavarovani spletni vmesnik (HTTPS). Portainer samodejno ustvari samopodpisani SSL-certifikat.
  • --name portainer – Kontejnerju dodeli pomenljivo ime.
  • --restart=always – Politika samodejnega ponovnega zagona kontejnerja v primeru napak ali ponovnega zagona strežnika.
  • -v /var/run/docker.sock:/var/run/docker.sock – Priključi Dockerjev vtičnik znotraj kontejnerja Portainer. To omogoča Portainerju, da komunicira z Dockerjevim demonom na gostitelju in ga upravlja.
  • -v portainer_data:/data – Ustvari poimenovani 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

Če želite uporabiti to metodo, ustvarite mapo in datoteko docker-compose.yml:

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

Vnesite 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 izvedite ukaz:

docker compose up -d

Prvi zagon in nastavitev spletnega vmesnika

Ko se kontejner Portainer zažene, je dostopen prek omrežja.

Korak 1. Povezava s spletnim vmesnikom

Odprite brskalnik in obiščite: https://:9443.

Info

Zaradi uporabe samopodpisanega certifikata bo brskalnik prikazal opozorilo. To je ob prvem zagonu normalno. Nadaljujte na spletno stran (na primer s klikom na »Sprejmi tveganje« ali »Nadaljuj na spletno stran«).

Zaradi uporabe samopodpisanega certifikata bo brskalnik prikazal opozorilo. Morate nadaljevati na stran.

Korak 2. Ustvarjanje uporabnika

Na strani za registracijo morate navesti uporabniško ime (priporočljivo je »admin«) in nastaviti močno geslo.

Tip

Geslo mora biti zapleteno, saj omogoča popoln dostop do upravljanja kontejnerjev.

Korak 3. Povezovanje okolja

Po ustvarjanju uporabnika vas bo Portainer pozval, da povežete okolja. V tej fazi lahko povežete lokalni Docker (ki je že na voljo zahvaljujoč priključenemu vtičniku) ali pa nadaljujete z dodajanjem oddaljenih okolij prek gumba »Dodaj okolja«.

Oddaljena okolja so koristna, kadar morate upravljati več strežnikov iz enega samega vmesnika Portainer: na primer pri dodajanju gostiteljev Docker v različnih podatkovnih centrih ali strežnikov s Kubernetesom. Povezava se vzpostavi prek agentov Portainer ali prek API z uporabo TLS-potrdil.

  • Izberite možnost »Začni«. To je osnovni scenarij za en strežnik.
  • Portainer bo samodejno zaznal lokalno Dockerjevo vtičnico. Prikazana bo kot »local«.
  • Kliknite nanj, da zaključite nastavitev.

Nastavitev je končana. Odprl se bo nadzorni panel Portainerja (glavni zaslon) s kratkimi statističnimi podatki o kontejnerjih, slikah, prostorninah in omrežjih.

Glavne značilnosti Portainerja

Oglejmo si glavne dele vmesnika, ki se uporabljajo za vsakodnevne administrativne naloge.

Nadzorna plošča

Začetni zaslon, ki prikazuje celotno sliko: število zagnanih in ustavljenih kontejnerjev ter število prenesenih slik. Omogoča vam hitro oceno stanja strežnika.

Kontejnerji

  • Osrednji del za upravljanje. Prikazuje seznam vseh kontejnerjev.
  • Upravljanje kontejnerjev: z enim klikom lahko kontejner zaženete, ustavite, ponovno zaženete ali izbrišete.
  • Dnevniki: Zavihek »Dnevniki« omogoča dostop do pregleda dnevnikov kontejnerjev v realnem času.
  • Pregled: Prikaže popolne informacije o kontejnerju v formatu JSON: spremenljivke okolja, točke priključitve, omrežne nastavitve.
  • Statistika: Grafični prikazi porabe procesorja, pomnilnika in omrežja za vsak kontejner. Pomaga pri ugotavljanju porabe virov po posameznih storitvah.
  • Izvedbena konzola: možnost odpiranja spletnega terminala znotraj kontejnerja za izvajanje ukazov.

Stacks

Implementacija Docker Compose v spletnem vmesniku. Omogoča nalaganje ali ustvarjanje datotek YAML neposredno prek brskalnika za razvrščanje aplikacij z več kontejnerji.

Slike

  • Upravljanje Dockerjevih slik.
  • Pull: Možnost prenosa slik (npr. nginx:latest ali mysql:8.0) neposredno iz vmesnika.
  • Remove: Čiščenje neuporabljanih slik za sprostitev prostora na disku.

Volumi

Upravljanje trajnih podatkovnih volumnov. Prikazuje obstoječe volumne, njihovo povezavo s kontejnerji in prostor, ki ga zasedajo. Izredno pomembno za baze podatkov in uporabniške podatke.

Omrežja

Omogoča ustvarjanje izoliranih omrežij za interakcijo med kontejnerji.

Povrnitev sprememb (odstranitev Portainerja)

Če morate Portainer in njegove podatke popolnoma odstraniti s strežnika, sledite tem korakom:

1. Zaustavite in odstranite kontejner Portainer:

sudo docker stop portainer sudo docker rm portainer

2. Odstranite podatkovni volumen Portainerja (opozorilo: ta dejanja ni mogoče razveljaviti):

sudo docker volume rm portainer_data

Danger

Izbris volumna portainer_data bo povzročil nepovratno izgubo vseh uporabnikov, nastavitev in konfiguracij Portainerja.

3. Odstranite sliko Portainerja (neobvezno):

sudo docker rmi portainer/portainer-ce:latest

Varnost in priporočila

Za produkcijsko okolje je potrebna dodatna varnostna konfiguracija Portainerja.

Uporaba povratnega proxyja (Nginx/Apache)

Priporočljivo je nastaviti poddomeno (npr. portainer.domain.com) in promet usmerjati prek Nginx. To bo zagotovilo:

  • Uporabo veljavnega SSL-potrdila (brezplačnega od Let's Encrypt ali plačljivega SSL, npr. od Sectigo).
  • Centralizirano beleženje dostopa.
  • Možnost konfiguracije dodatnega avtentificiranja.

1. Namestitev in konfiguracija Nginx

Namestite Nginx:

sudo apt install -y nginx # For Debian/Ubuntu # or sudo dnf install -y nginx # For CentOS/Rocky Linux

Ustvarite konfiguracijsko datoteko za Portainer:

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

Dodajte naslednjo konfiguracijo in nadomestite s svojo domeno, ki kaže na IP naslov strežnika:

server { listen 80; server_name <YOUR_DOMAIN>; 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; # Timeouts for long operations 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 Nginx:

sudo nginx -t

Če je preverjanje uspešno, ponovno 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 <your_domain></your_domain>

Zamenjajte s svojo domeno.

Med namestitvijo vnesite svoj e-poštni naslov, na primer admin@, nato dvakrat pritisnite Y.

Preverite samodejno podaljšanje certifikata:

sudo systemctl list-timers | grep certbot

Konfiguracija požarnega zidu

Neposreden dostop do vrat Portainerja mora biti omejen. Dostop do vrat 8000 in 9443 dovolite le z zaupanja vrednih IP-naslovov.

Danger

Bodite previdni pri pravilih požarnega zidu. Nepravilna 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, da se odpravijo morebitne ranljivosti.

Preverjanje delovanja

Da preverite, ali Portainer deluje pravilno, izvedite naslednje korake.

  1. Vizualni pregled: V razdelku »Containers« se prepričajte, da je kontejner Portainer v stanju »running«.
  2. Ustvarjanje testnega kontejnerja:
    • Pojdite v razdelek »Containers« in kliknite gumb »Add container«.
    • V polju »Ime« vnesite test-nginx.
    • V polju »Slika« vnesite »nginx:alpine«.
    • V razdelku »Port mapping« (Preslikava vrat) vnesite gostiteljsko vrata 8080 in vrata kontejnerja 80.
    • Kliknite »Deploy the container«.
  3. Preverjanje dostopnosti:
    • Počakajte, da se kontejner prikaže na seznamu s statusom »teče«.
    • Odprite brskalnik in vnesite naslov http://<VAŠ_IP_NASLOV>:8080. Prikazala se bo uvodna stran Nginx.
  4. Preverjanje upravljanja:
    • V Portainerju poiščite kontejner test-nginx in kliknite gumb »Stop«.
    • Osvežite stran Nginx v brskalniku – dostop naj bi bil onemogočen.
    • Kliknite »Start« – dostop do strani bi moral biti ponovno vzpostavljen.

Odpravljanje težav

Težava 1: Spletnega vmesnika Portainer na naslovu https://:9443ni mogoče odpreti

Možni vzrok: Požarni zid blokira vrata 9443.
Rešitev: Preverite pravila požarnega zidu in se prepričajte, da je vrata odprta. Za UFW: sudo ufw status | grep 9443.

Težava 2: Napaka »Ne morem vzpostaviti povezave z Dockerjevim demonom« pri izvajanju ukazov Dockerja.

Možni vzrok: Dockerjev demon ne teče ali pa uporabnik nima ustreznih dovoljenj.
Rešitev: Zaženite demon: sudo systemctl start docker. Če ste uporabnika dodali v skupino docker, se odjavite in ponovno prijavite.

Težava 3: Kontejner Portainer se ne zažene in se takoj zapre (stanje »exited«).

Možni vzrok: Konflikt vrat ali poškodovana slika.
Rešitev: Preverite, ali je vrata 9443 zasedena s katero drugo aplikacijo: sudo ss -tulpn | grep 9443. Poskusite vrata ponovno dodeliti in ponovno zagnati kontejner: sudo docker restart portainer.

Zaključek

Portainer CE ponuja učinkovito orodje za vizualno spremljanje in upravljanje Dockerjevih kontejnerjev. Zmožnost hitre ocene stanja kontejnerjev, analize grafikonov porabe virov in izvajanja tipičnih operacij brez povezave prek SSH skrajša odzivni čas ob incidentih in poenostavi vsakodnevno upravljanje.

To orodje je lahko koristno, kadar je treba razvijalcem ali manj izkušenemu osebju omogočiti omejen dostop do upravljanja kontejnerjev, ne da bi jim dodelili neposreden dostop do ukazne vrstice strežnika. Portainer CE je standardna rešitev za vizualizacijo infrastrukture kontejnerjev in se priporoča za uporabo na strežnikih.

---

Različica dokumenta: 1 .1
Zadnja posodobitev: marec 2026
Lastnik: Ekipa zatehnično dokumentacijo

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