instalacija servisa
📌 Korak 1: Instaliraj Nginx i omogući HTTPSbashCopysudo apt update && sudo apt upgrade -y sudo apt install nginx -y📌 Korak 2: Instaliraj Certbot (Let's Encrypt) za HTTPSbashCopysudo apt install certbot python3-certbot-nginx -y
Generiraj certifikat za pi.local i docs.pi.local:
bashCopysudo certbot --nginx -d pi.local -d docs.pi.local
Certbot će automatski konfigurirati Nginx za HTTPS.
🔧 Konfiguracija Nginx za Cockpit (HTTPS)
Cockpit već radi na portu 9090, ali želimo ga preusmjeriti na https://pi.local.
1. Omogući HTTPS u CockpitubashCopysudo nano /etc/cockpit/cockpit.conf
Dodaj:
iniCopy[WebService] Origins = https://pi.local ProtocolHeader = X-Forwarded-Proto AllowUnencrypted = false
Ponovo pokreni Cockpit:
bashCopysudo systemctl restart cockpit2. Postavi Nginx Reverse Proxy za CockpitbashCopysudo nano /etc/nginx/sites-available/cockpit
Dodaj:
nginxCopyserver { listen 443 ssl; server_name pi.local; ssl_certificate /etc/letsencrypt/live/pi.local/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/pi.local/privkey.pem; location / { proxy_pass https://localhost:9090; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; } }
Omogući konfiguraciju i restartaj Nginx:
bashCopysudo ln -s /etc/nginx/sites-available/cockpit /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Sada možeš pristupiti Cockpitu na:
🔗 https://pi.local
📌 Korak 3: Dodaj Domenu docs.pi.local1. Uredi hosts datoteku (na klijentskom računalu)bashCopy# Na Linux/macOS uređuješ /etc/hosts # Na Windows: C:\Windows\System32\drivers\etc\hosts 192.168.5.26 docs.pi.local2. Postavi Nginx za docs.pi.localbashCopysudo nano /etc/nginx/sites-available/docs
Dodaj:
nginxCopyserver { listen 443 ssl; server_name docs.pi.local; ssl_certificate /etc/letsencrypt/live/pi.local/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/pi.local/privkey.pem; root /var/www/docs; index index.html; location / { try_files $uri $uri/ =404; } }
Napravi direktorij i testnu stranicu:
bashCopysudo mkdir -p /var/www/docs echo "<h1>📘 Dobrodošli na docs.pi.local!</h1>" | sudo tee /var/www/docs/index.html
Omogući konfiguraciju i restartaj Nginx:
bashCopysudo ln -s /etc/nginx/sites-available/docs /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Sada možeš pristupiti dokumentaciji na:
🔗 https://docs.pi.local
📌 Korak 4: Instaliraj PHP 8 i MySQL 81. Dodaj ondrej/php repozitorijbashCopysudo apt install lsb-release ca-certificates apt-transport-https software-properties-common -y sudo add-apt-repository ppa:ondrej/php -y sudo apt update2. Instaliraj PHP 8.3 + potrebni modulibashCopysudo apt install php8.3-fpm php8.3-mysql php8.3-curl php8.3-gd php8.3-mbstring -y3. Instaliraj MySQL 8bashCopysudo apt install mysql-server-8.0 -y sudo mysql_secure_installation # Postavi root lozinku4. Postavi Nginx za PHPbashCopysudo nano /etc/nginx/sites-available/php
Dodaj:
nginxCopyserver { listen 443 ssl; server_name db.pi.local; ssl_certificate /etc/letsencrypt/live/pi.local/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/pi.local/privkey.pem; root /var/www/php; index index.php index.html; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.3-fpm.sock; } }
Napravi direktorij i testnu PHP stranicu:
bashCopysudo mkdir -p /var/www/php echo "<?php phpinfo(); ?>" | sudo tee /var/www/php/index.php
Omogući konfiguraciju i restartaj Nginx:
bashCopysudo ln -s /etc/nginx/sites-available/php /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Sada možeš testirati PHP na:
🔗 https://db.pi.local
📌 Korak 5: Instaliraj phpMyAdmin1. Preuzmi i instaliraj phpMyAdminbashCopysudo apt install phpmyadmin -y
-
Odaberi Nginx prilikom instalacije.
-
Poveži phpMyAdmin s MySQL-om.
2. Postavi Nginx za phpMyAdminbashCopysudo nano /etc/nginx/sites-available/phpmyadmin
Dodaj:
nginxCopyserver { listen 443 ssl; server_name db.pi.local; ssl_certificate /etc/letsencrypt/live/pi.local/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/pi.local/privkey.pem; root /usr/share/phpmyadmin; index index.php; location / { try_files $uri $uri/ =404; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php8.3-fpm.sock; } }
Omogući konfiguraciju i restartaj Nginx:
bashCopysudo ln -s /etc/nginx/sites-available/phpmyadmin /etc/nginx/sites-enabled/ sudo systemctl restart nginx
Sada možeš pristupiti phpMyAdmin-u na:
🔗 https://db.pi.local
📌 Korak 6: Finalni Test
-
Cockpit: https://pi.local
-
Dokumentacija: https://docs.pi.local
-
MySQL + phpMyAdmin: https://db.pi.local
🔥 Savjet: Ako koristiš Cloudflare, možeš postaviti Tunnel za sigurnu izloženost na internetu.