Kako konfigurirati pristup kontejneriziranom okruženju koristeći Nginx Proxy Manager na Linuxu
Uvod
U ovom vodiču konfigurirate siguran i korisnički pristupačan pristup uslugama u kontejnerima koristeći Nginx Proxy Manager. Ovaj pristup pojednostavljuje upravljanje reverse proxyjem putem web sučelja umjesto ručne konfiguracije. Instalirat ćete Nginx Proxy Manager s Dockerom, postaviti ga i izložiti uslugu u kontejneru putem domene.
Preduvjeti
Ciljana publika: Početnici sistem administratori
Procijenjeno vrijeme: ~30 minuta
Krajnji cilj: Na kraju ovog vodiča imat ćete postavljen Nginx Proxy Manager koji usmjerava vanjski promet prema aplikaciji u kontejneru.
Sistemski zahtjevi:
- OS: Linux distribucija kompatibilna s Dockerom
- Docker: 24.0.6 ili noviji
- Docker Compose: v2
- Minimalno 1 GB RAM-a i 10 GB prostora na disku
- Domena koja pokazuje na IP adresu vašeg servera
- Otvoreni portovi: 80, 81, 443
- Sudo privilegije
Potrebno znanje:
- Osnovno korištenje Linux komandne linije
- Osnovno razumijevanje Docker kontejnera
Korak 1: Razumijevanje Nginx Proxy Managera
Nginx Proxy Manager je alat temeljen na webu koji upravlja konfiguracijama Nginx reverse proxyja. Omogućuje vam usmjeravanje prometa prema različitim uslugama koristeći domene, omogućavanje SSL certifikata i upravljanje pravilima pristupa bez ručnog uređivanja konfiguracijskih datoteka.
Ključne značajke:
- Web sučelje za upravljanje proxyjem
- Automatski SSL putem Let's Encrypt
- Kontrola pristupa i autentifikacija
- Laka integracija s Docker okruženjima
Rezultat: Razumijete kako Nginx Proxy Manager pojednostavljuje izlaganje usluga u kontejnerima.
Korak 2: Instalacija Dockera i Docker Composea
Instalirajte Docker koristeći jednostavnu naredbu:
curl -sSL https://get.docker.com/ | CHANNEL=stable bash
Provjerite instalaciju Dockera:
docker --version
Provjerite Docker Compose:
docker compose version
Rezultat: Docker i Docker Compose su instalirani i spremni za korištenje.
Korak 3: Postavljanje Nginx Proxy Managera
Kreirajte direktorij projekta:
mkdir ~/npm && cd ~/npm
Kreirajte konfiguracijsku datoteku:
nano docker-compose.yml
Unesite sadržaj konfiguracije:
version: "3" services: app: image: jc21/nginx-proxy-manager:latest restart: always ports: - "80:80" - "81:81" - "443:443" volumes: - ./data:/data - ./letsencrypt:/etc/letsencrypt
Spremite datoteku i izađite.
Pokrenite uslugu:
docker compose up -d
Rezultat: Nginx Proxy Manager kontejner je pokrenut i sluša na potrebnim portovima.
Korak 4: Pristup web sučelju

Otvorite preglednik i idite na: http://<YOUR_IP_ADDRESS>:81
Zadani podaci za prijavu:
- Email:
[email protected] - Lozinka:
changeme
Ažurirajte svoje podatke kada se to zatraži.
Rezultat: Možete pristupiti i upravljati Nginx Proxy Managerom putem web sučelja.
Korak 5: Implementacija testnog kontejnera
Pokrenite testni web kontejner:
docker run -d --name test-app -p 8080:80 nginx
Provjerite pristup otvaranjem: http://<YOUR_IP_ADDRESS>:8080
Rezultat: Testni kontejner je pokrenut i dostupan lokalno.
Korak 6: Kreiranje Proxy Host-a

U sučelju Nginx Proxy Managera:
- Kliknite "Proxy Hosts"
- Kliknite "Add Proxy Host"
- Unesite domenu:
<YOUR_DOMAIN> - Proslijedite ime hosta ili IP:
localhost - Proslijedite port:
8080 - Omogućite "Block Common Exploits"
- Spremite konfiguraciju
Rezultat: Promet s vaše domene usmjeren je prema kontejneru.
Korak 7: Omogućavanje SSL-a

Uredite proxy host:
- Otvorite SSL karticu
- Odaberite Zatraži novi SSL certifikat
- Omogućite Force SSL
- Omogućite HTTP/2 podršku
- Unesite svoj email i prihvatite uvjete
- Spremite promjene
SSL zahtijeva ispravne DNS zapise koji pokazuju vašu domenu na vaš server.
Rezultat: HTTPS je omogućen i osiguran valjanim certifikatom.
Provjera
Otvorite svoju domenu: https://<YOUR_DOMAIN>
Očekivani rezultati:
- Učita se Nginx testna stranica
- Preglednik prikazuje valjani SSL certifikat
- Nema sigurnosnih upozorenja
Provjerite pokrenute kontejnere:
docker ps
Rezultat: Reverse proxy radi ispravno i sigurno usmjerava promet.
Vraćanje promjena
Zaustavite usluge:
docker compose down
Uklonite testni kontejner:
docker rm -f test-app
Izbrišite datoteke projekta:
rm -rf ~/npm
Važno: Ovo uklanja sve konfiguracije i SSL certifikate.
Rezultat: Sve promjene su vraćene i sustav je čist.
Rješavanje problema
Problem: Ne mogu pristupiti web sučelju
Rješenje: Provjerite je li port 81 otvoren i nije li ga zauzela druga usluga
Problem: Generiranje SSL certifikata ne uspijeva
Rješenje: Provjerite DNS konfiguraciju koja pokazuje na vaš server
Problem: Proxy host ne radi
Rješenje: Provjerite status kontejnera s docker ps i logove s docker logs <CONTAINER_ID>
Rezultat: Uobičajeni problemi su identificirani i riješeni.
Zaključak i sljedeći koraci
Instalirali ste i konfigurirali Nginx Proxy Manager koristeći Docker i izložili uslugu u kontejneru s domenom i SSL-om. Ova postavka pruža jednostavan i skalabilan način upravljanja višestrukim uslugama.
Sljedeći koraci:
- Dodajte dodatne usluge iza različitih domena
- Konfigurirajte liste kontrole pristupa
- Istražite napredne postavke proxyja i sigurnosti