Dnes se podíváme na to, jak nainstalovat Nginx Proxy Manager na Raspberry Pi!
Pokud zpřístupňujete jakékoli služby ve své síti, použití reverzního proxy je skvělý způsob, jak zvýšit zabezpečení a výkon. Reverzní proxy je server, který sedí před vašimi webovými servery a předává požadavky klientů webovým serverům. Laicky řečeno, stačí vystavit jeden server (pomocí portů 80/443) a budete moci vystavit tolik webových služeb, kolik chcete.
Toto je příklad síťového toku reverzního proxy (zjednodušeně):
Tento tutoriál využije Raspberry Pi, který je skvělý pro domácí použití, ale pokud hostujete něco s velkým provozem, pravděpodobně bude lepší použít schopnější server. Po dokončení instalace zkontrolujeme stav aplikace pomocí Porttaineru, ale není to povinné.
Pokyny – Nginx Proxy Manager Raspberry Pi
Ujistěte se, že je nainstalován Docker. Pokud není nainstalován, můžete se dozvědět, jak jej nainstalovat zde.
1. K vytvoření kontejneru Nginx Proxy Manager musíme použít docker compose. To vyžaduje, abychom nainstalovali několik závislostí – spusťte níže uvedené instalační příkazy v daném pořadí.
sudo apt-get install -y libffi-dev libssl-dev sudo apt-get install -y python3 python3-pip sudo pip3 -v install docker-compose
2. Po dokončení instalace příkazů musíme vytvořit složku, kde budou existovat naše konfigurační soubory a soubory docker-compose. Poté přejdeme do této složky a vytvoříme soubor s názvem config.json.
mkdir nginx cd nginx nano config.json
3. Vložte tento obsah do konfiguračního souboru.
{
"database": {
"engine": "mysql",
"host": "db",
"name": "npm",
"user": "npm",
"password": "npm",
"port": 3306
}
}
4. Uložte soubor a ukončete jej. Vytvořte nový soubor s názvem docker-compose.yml
nano docker-compose.yml
5. Vložte níže uvedený obsah do souboru docker-compose.
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
ports:
- '80:80'
- '81:81'
- '443:443'
volumes:
- ./config.json:/app/config/production.json
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
db:
image: 'yobasystems/alpine-mariadb:latest'
environment:
MYSQL_ROOT_PASSWORD: 'npm'
MYSQL_DATABASE: 'npm'
MYSQL_USER: 'npm'
MYSQL_PASSWORD: 'npm'
volumes:
- ./data/mysql:/var/lib/mysql
Pokud se zobrazí chyba a kontejner se nespustí a běží jako „nesprávný“, postupujte podle následujících pokynů:
Zvláštní díky Plan945 za připomínky k řešení.
Nahraďte toto v docker-compose.yml:
image: 'yobasystems/alpine-mariadb:latest'
S tímto:
image: 'yobasystems/alpine-mariadb:10.4.17-arm32v7'
6. Uložte soubor a ukončete. Ve složce nginx byste měli mít dva soubory. Spusťte níže uvedený příkaz a spusťte kontejner dockeru.
sudo docker-compose up -d
7. Kontejner stáhne a nainstaluje všechny potřebné soubory.
8. Nyní upravíme oba kontejnery, které Nginx Proxy Manager používá k automatickému spouštění při restartu Raspberry Pi.
sudo docker update --restart always nginx_app_1 sudo docker update --restart always nginx_db_1
9. Restartujte Raspberry Pi – velmi důležité!
sudo reboot now
10. Po dokončení restartu bude trvat několik minut, než se kontejner plně nainstaluje. Chcete-li zkontrolovat stav kontejneru, můžete spustit příkaz níže. Když hlásí „zdravý“, budete moci přejít na web Nginx Proxy Manager. Případně, pokud nastavíte Porttainer, můžete otevřít Portainer a zkontrolovat stav kontejneru tam.
sudo docker ps
11. Počkejte, až se stav změní na zdravý .
12. Přejděte na IP adresu vašeho Raspberry Pi a port 81.
http://[RASPBERRY_PI_IP]:81
13. Výchozí e-mailová adresa je [chráněn e-mailem] a heslo je changeme. Když se přihlásíte, budete požádáni o změnu těchto informací.
14. V tomto okamžiku je Nginx Proxy Manager plně nainstalován. Budete muset otevřít porty 80/443 na vašem routeru, aby ukazovaly na vaše Raspberry Pi. Odtud budete muset nakonfigurovat Nginx Proxy Manager. Většina lidí bude používat Nginx Proxy Manager jako nic jiného než proxy manažer. Nebudu procházet procesem konfigurace služby, protože to bude pro každého jiné, ale pokud máte zájem vidět, jak ji lze použít, podívejte se na video, jak jsem prošel příkladem!
Závěr
Pokud zpřístupňujete služby ve své síti, je použití reverzního proxy skvělý nápad. Mnoho lidí nepotřebuje plnohodnotný server s Nginx Proxy Manager, takže Raspberry Pi je v tomto případě skvělá volba. Funguje dobře a jeho nastavení je poněkud jednoduché.
Děkujeme, že jste si přečetli tutoriál. Pokud máte nějaké dotazy, zanechte je v komentářích!
Definitivní průvodce zálohováním a obnovou kontejnerů Docker [Cloud + místní přístup pro samostatné servery]
Jak centralizovat správu protokolů pomocí Graylog pomocí Dockeru
Rychlý průvodce nástroji Docker Utilities, Daemon a jeho dalšími možnostmi