Tutorial – cum faci un webserver pentru propriul site cu Raspberry Pi4

Am avut o vreme Raspberry Pi3 si am renuntat la el dupa ce mi-am dat seama ca nu poate tine loc, nici macar la un nivel basic, de un PC desktop cu aplicatii de baza gen office, internet browsing, audio si video player.

Apoi am tresarit cand am vazut specificatiile hardware pentru Raspberry Pi4: procesor quad core 1.5Ghz pe 64 biti, 4GB Ram DDR4, retea Gigabit, wireless ac, USB 3.0, decodare 4K la 60 fps. Primul lucru la care m-am gandit a fost ca va duce fara probleme un Linux Ubuntu desktop, sau un Ubuntu Mate, sau un Lubuntu. Din pacte nu, nu duce si nu e nici macar aproape sa faca asta. Experienta de utilizare e dezamagitoare. Singurul sistem de operare desktop util, ramane in continuare Debian cu Raspberry Pi Desktop, adica softul dezvoltat special pentru Pi. Raspberry Pi 4 mai poate tine loc de media player cu ajutorul sistemului de operare LibreElec, sau mai poti pune pe el Android cu tot cea ce inseamna asta.

Utilitatea lui Raspberry Pi 4 ramane totusi acea de utilitar pentru cei care vor sa-si dezvolte abilitatile de programator combinand programarea in Python cu multitudinea de accesorii disponibile pentru controlerul Gpio pentru automatizari sau IOT.

Instalare Ubuntu server pe Raspberry Pi4

Totusi, am reusit sa-i mai gasesc o utilitate, macar la nivel educational, acea de webserver. Raspberry Pi 4 suporta oficial Ubuntu server. Acesta poate fi descarcat de aici, apoi cu ajutorul utilitarului Rufus, poti scrie imaginea de OS pe card. Va recomand sa folositi un card foarte rapid, as zice minim un Samsung Micro-SDXC EVO Plus de 128GB care are viteze de scriere/citire de aprox 90MB/s (atentie la alte carduri care dau viteze de 80-90 MB/s, dar acestea sunt valabile doar la citire, scrierea se face cu aprox 20-30 Mb/s. Chiar si Samsung Evo Plus de 64 si 32Gb au viteze mult mai mici).

Dupa intorducerea cardului si alimentarea mini pc-ului, incepe o sesiune de configurare Ubuntu destul de simpla. Intr-un final ajungeti la Log-in (retineti ca asta nu e o instalare cu interfata grafica, se lucreaza doar cu linie de comanda. O minima cunoastere a sistemului de operare Linux ajuta mult).

Practic in acest moment ai un server instalat. Tot ce urmeaza sa faci e sa setezi un IP static pentru Raspberry Pi 4, apoi sa instalezi o interfata grafica de administrare webserver peste Ubuntu Server. Dupa asta ai nevoie de un utilitar FTP pentru a te conecta la serverul FTP setat pe Raspberry Pi 4 pentru a urca acolo un site static, sau pentru a incarca o distributie wordpress pentru a instala un blog personal. Sa le luam pe rand.

Setare IP static pe Ubuntu Server

Este un pas necesar pentru ca restul configurarilor se vor face remote (nu e obligatoriu, dar e mai bine asa). In plus, daca vrei sa ti acest site pe Raspberry Pi, trebuie sa-l setezi ca sa poata fi accesat din afara retelei tale, asa ca trebuie sa faci port forwarding in router, iar pentru asta ai nevoie de un IP fix.

Dupa ce te-ai logat in Ubuntu server cu user si parola setate la instalare, fa un update si un upgrade inainte de toate:

sudo apt update
sudo apt upgrade

Apoi tastezi in consola:

sudo nano /etc/netplan/01-netcfg.yaml

Aceasta comanda iti deschide pentru editare fisierul 01-netcfg.yaml de unde Ubuntu isi ia setarile de retea. Trebuie sa adaugi aici linii astfel incat sa arate ca mai jos, dar atentie la datele din reteaua ta, mai jos e un exemplu. Ip-ul tau il setezi cum vrei, dar tinand cont de clasa de IP-uri din reteaua ta. Gateway este routerul tau, acolo pui adresa lui de IP. La nameservers > addresses lasi asa, aceleas sunt DNS-urile Google. Deasemenea, ens33 de mai jos e numele interfetei, trebuie sa pui acolo numele interfetei tale de retea al Pi-ului.

# This file describes the network...
# For more information, see netplan(5).
  network:  
  version: 2  
  renderer: networkd  
  ethernets:    
   ens33:      
    dhcp4: no      
    dhcp6: no      
    addresses: [192.168.1.10/24]      
    gateway4: 192.168.1.1      
    nameservers:        
      addresses: [8.8.8.8,8.8.4.4]

Instalare interfata grafica de administrare webserver

Daca ati mai avut de-a face cu webhosting shared, cel mai probabil ati folosit pentru administrare site cPanel. El e cel mai cunoscut utilitar de acest fel, dar nu singurul. Si e scump daca vreti sa-l folositi acasa. Daca vrei sa-ti pui site-ul pe un VPS (virtual private server) atunci vei avea nevoie de un astfel de utilitar oricum.

Eu folosesc pentru asta Webmin si Virtualmin. Sunt free.

Instalare Webmin (aceasta este o intefata grafica de administrare server). Pui in consola aceste comenzi:

sudo apt install python apt-show-versions libapt-pkg-perl libauthen-pam-perl libio-pty-perl libnet-ssleay-perl

cd /tmp && curl -L -O http://www.webmin.com/download/deb/webmin-current.deb

sudo dpkg -i webmin-current.deb

Dupa asta, poti deja sa accesezi serverul prin

https://localhost:10000

e valabil daca esti conectat direct in portul de retea al Raspberry Pi 4, altfel in loc de localhost pui IP-ul fix setat mai inainte. Un utilitar bun cu care te conectezi remote este Putty

Instalare Virtualmin (acesta este un set de aplicatii si functii pentru administrarea serverului ca webserver. El va instala o baza de date, apache server, etc…

curl -O http://software.virtualmin.com/gpl/scripts/install.sh

sudo chmod +x install.sh

sudo ./install.sh

De data asta, dupa ce va logati in administrare grafica cu adresa de mai sus, vezi vedea si un meniu Virtualmin. De aici incepe configurarea domeniului si a tuturor functionalitatilor unui website (mail, baza de date, etc). Recomand ca aplicatie FTP Filezilla. Nu discutam aici si partea asta de instalare si configurare website, dar urmeaza intr-un alt articol.

M-am jucat cateva zile cu un site pe Raspberry Pi4, un site facut pe WordPress. Pot sa spun ca e foarte rapid si cred ca poate duce fara probleme cu site cu pana la 2-3000 de vizitatori pe zi (mai problematic daca sunt multi simultani si mai ales daca e configurat prost). Dar am facut niste teste in PageSpeed Insights, utilitarul Google care masoara viteza de incarcare a unei pagini de website si am scos peste 95 de punte din 100 atat pe desktop cat si pe mobil (desigur, site-ul nu era foarte incarcat, dar pusesem peste el o tema si cateva pagini de articole). M-a interesat in special acei indicatori care tin de viteza de reactie a serverului si aici am obtinut scor foarte bun.


 Abonează-te la Blogman.ro pe WhatsApp


Urmareste-ma pe Google News


 

 

4 comentarii la „Tutorial – cum faci un webserver pentru propriul site cu Raspberry Pi4”

Lasă un comentariu