Installation av Nginx Proxy Manager - 2-minuters installationsguide
Dina tjänster finns för närvarande på fula adresser som 192.168.1.50:8080. Nginx Proxy Manager förvandlar dem till rena namn som app.yourdomain.com med gratis HTTPS - installerad med en Docker Compose-fil och hanteras från en enkel webbpanel istället för handskrivna konfigurationsfiler.
📑Kapitel
- Vad en omvänd proxy gör - en dörr för alla dina tjänster
- Vad du behöver innan du börjar - Docker, en domän och portar som kan nås
- Peka din domän-DNS till servern innan du installerar något
- Skapa mappen och filen docker-compose.yml
- Starta Nginx Proxy Manager med ett kommando
- Första inloggningen – adminkontosteget alla gör fel
- Skapa din första proxyvärd fält för fält
- Hämta det kostnadsfria Lets Encrypt HTTPS-certifikatet och aktivera Force SSL
📋 Översikt och steg-för-steg-guide
Vad du behöver innan du börjar
Tre saker måste finnas innan Nginx Proxy Manager (NPM) kan fungera. För det första, en Linux-server eller PC med Docker och Docker Compose redan installerade och fungerar - NPM körs som en container, inte som ett normalt program. För det andra, ett domännamn vars DNS du kan redigera, eftersom varje tjänst får sin egen underdomän. För det tredje måste din router eller molnbrandvägg kunna vidarebefordra portarna 80 och 443 till den här maskinen.
Rikta din domän-DNS till servern först
NPM dirigerar trafik efter namn, och Lets Encrypt utfärdar certifikat endast för namn som bevisligen pekar på din maskin - så namnet måste lösas innan du bygger något på det. Hos din registrar eller DNS-värd lägger du till en A-post: Namnet är endast underdomänordet (till exempel app) och värdet är din servers offentliga IP-adress. Varje tjänst får sin egen post, och de kan alla peka på samma IP - NPM separerar tjänsterna senare, med namn. Ställ in en kort TTL som 300 sekunder under testning, så att misstag bleknar på minuter istället för timmar.
Bevisa det innan du fortsätter: kontrollera att namnet löser sig till din offentliga IP från ett externt nätverk (till exempel från din telefon med Wi-Fi avstängt). Att begära ett certifikat mot trasigt DNS-avfall kan kryptera försök, och upprepade misslyckanden kan begränsa dig i timmar. Beställningen spelar roll: DNS först, proxy värd andra, certifikat tredje.
Skapa mappen och skrivfilen
Skapa en mapp för NPM på servern och spara filen nedan i den som docker-compose.yml. Denna enda fil är den kompletta installationen. Bildnamnet är den officiella community-bilden. Portar 80 och 443 är de offentliga dörrarna, port 81 är adminpanelen och de två volymerna är där hela din installation finns: ./data innehåller databasen med alla dina proxyvärdar och ./letsencrypt har dina certifikat. Förlora de två mapparna och du förlorar hela installationen - säkerhetskopiera dem när saker och ting är igång.
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80'
- '443:443'
- '81:81'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
Raden restart: unless-stopped tar tillbaka NPM automatiskt efter en omstart.
Starta Nginx Proxy Manager
Kör startkommandot inifrån den mappen. Docker laddar ner bilden och startar behållaren i bakgrunden.
docker compose up -d
Kontrollera att den körs:
docker ps
Du bör se behållaren listad med portarna 80, 443 och 81. På en liten server tar den första starten en minut eller två medan databasen skapas. Om behållaren fortsätter att starta om visar loggarna orsaken på vanligt språk:
docker compose logs
Nio gånger av tio är en omstartsslinga en port som redan används av något annat på värden - vanligtvis en gammal webbserver som fortfarande körs.
Första inloggningen - Säkra administratörskontot omedelbart
Öppna adminpanelen i en webbläsare i ditt eget nätverk:
http://your-server-ip:81
Gör detta under den första minuten. Beroende på bygget ber NPM dig antingen att ersätta de välkända administratörsuppgifterna för första inloggning med din egen e-postadress och ett starkt lösenord, eller - på nyare versioner utan standardkonto - den första personen som öppnar adminsidan skapar administratören. Hur som helst är regeln densamma: skapa ditt eget administratörskonto i samma ögonblick som behållaren startar, innan du skapar något annat, och använd en riktig brevlåda - NPM-e-postmeddelanden som tar upp certifikatproblem.
Skapa din första proxyvärd
I NPM öppnar du Värdar → Proxyvärdar → Lägg till proxyvärd och fyller i formuläret som en mening - "det här namnet går till den interna tjänsten":
Domännamn: app.yourdomain.com - det exakta offentliga namnet från steg 2, som redan måste lösas till din server.
Schema: http för de flesta hem- och kontorsappar. Schema beskriver kopplingen mellan NPM och den interna tjänsten, inte vad besökarna använder - NPM hanterar den offentliga krypteringen vid dörren. Välj https här endast när själva den interna appen serverar HTTPS.
Vidarebefordra värdnamn / IP: tjänstens interna adress, till exempel 192.168.1.50.
Forward Port: porten tjänsten faktiskt lyssnar på, till exempel 8080 - inte 80 eller 443; det är NPM:s dörrar, inte tjänstens.
Aktivera Blockera vanliga utnyttjanden och sedan Spara. Testa omedelbart genom att öppna namnet i en webbläsare - helst från din telefon med Wi-Fi avstängt, så att du testar den verkliga offentliga sökvägen.
localhost fel (inuti NPM:s container betyder localhost själva NPM) - använd serverns LAN-IP med den publicerade porten, eller lägg båda behållarna på samma Docker-nätverk och använd containernamnet.Skaffa Free Lets Encrypt HTTPS-certifikatet
Gör detta först efter att den vanliga värden från steg 6 redan fungerar - HTTPS på en trasig värd ger dig en trasig värd med ett certifikat och dubbelt så många platser att leta efter felet. Öppna samma proxyvärd, gå till fliken SSL, ställ in SSL-certifikat på Begär ett nytt SSL-certifikat, aktivera Force SSL och HTTP/2 Support, godkänn användarvillkoren för Lets Encrypt och spara. Ladda om sajten - webbläsaren ska nu visa hänglåset på https.
Hur det fungerar: Lets Encrypt bevisar att du kontrollerar namnet genom att be din server, över det offentliga internet på port 80, att visa en engångstoken (HTTP-01-utmaningen). Det är därför DNS som pekar på dig och en port 80 som kan nås är icke förhandlingsbara - misslyckas med någon av dem och begäran misslyckas, och felet finns i installationen, aldrig i Lets Encrypt. Force SSL omdirigerar varje http-besökare till https automatiskt; utan den förblir den okrypterade dörren öppen bredvid den krypterade.
🏷️Ämnessökvariabler och nyckelord
🎙️ Fullständig transkription – tryck för att expandera
__TOK_34__
__TOK_35__
__TOK_36__
❓ Vanliga frågor
Är denna handledning 100 % gratis att följa?
__TOK_37__
Kan nybörjare följa den här guiden?
__TOK_38__
Var kan jag ställa frågor om jag fastnar?
__TOK_39__