LEMP - CentOS 8 / RHEL 8 / Fedora

Poradniki społeczności
anon85678085
anon85678085

Co to jest LEMP? LEMP (Linux, Nginx, MySQL, PHP) jest modyfikacją bardzo popularnego LAMP, czyli Linux, Apache, MySQL, PHP. Jest on używany do tworzenia aplikacji internetowych.

Co jest potrzebne?

  • VPS 2GB RAM (Najlepiej by nie chodził cały czas 100% zużycia pamięci)
  • CentOS 8, RHEL 8, Fedora
  • Trochę czasu.

Krok 1 - Przygotowanie Repozytoriów

Pierw dodamy repozytoria MariaDB (Serwera MySQL) do systemu. Robimy to za pomocą

cat << EOF > /etc/yum.repos.d/mariadb.repo
[mariadb]
name = MariaDB-10.4
baseurl=http://yum.mariadb.org/10.4/centos8-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
EOF

Później repozytoria PHP by zainstalować najnowszą możliwą wersję* Zrobimy to za pomocą dwóch komend: Pierw:

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Następnie:

yum install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Po tych czynnościach wykonujemy:

yum update

Okej, repozytoria przygotowane, czas na instalację.

Krok 2 - Instalacja Pakietów

Zainstalujmy na początek NGINX, bo to najmniej problemowa czynność :slight_smile:

Aby zainstalować serwer WEB NGINX należy wpisać:

yum install -y nginx

Po zakończeniu tego procesu dodajmy reguły firewall by można było łączyć się spoza sieci lokalnej do serwera WWW

Dla połączeń przez port 80:

firewall-cmd --add-port=80/tcp --permanent

Dla połączeń przez port 443 (SSL):

firewall-cmd --add-port=443/tcp --permanent

Po tych czynnościach restartujemy Firewall za pomocą komendy

firewall-cmd --reload

I teraz wpisując http://IP_VPS wyskoczy nam: image|690x381, 75%

Co oznacza że serwer WWW działa 🎉

Instalacja bazy danych MySQL:

yum install -y mariadb-server

Po zakończeniu tego procesu wpusujemy:

systemctl enable --now  mariadb

a następnie:

mysql_secure_installation

I postępujemy zgodnie z instrukcją.

Po zakończeniu tego procesu baza MySQL działa! 🎉

Instalacja PHP 7.4

Na początek wyrzućmy domyślną wersję zrobimy to za pomocą:

yum module disable php

Okej, wyrzucona domyślna wersja? Czas dodać najnowszą:

yum module install php:remi-7.4

I instalujemy:

sudo yum install php php-common php-opcache php-mcrypt php-cli php-gd php-curl php-mysql php-fpm

Aby zainstalować dodatki typ. PDO, MySQLi należy wpisać:

yum install php-

Okej, uruchamiamy obsługę PHP-FPM aby w serwerze www działał PHP

systemctl enable --now php-fpm

Testujemy czy działa PHP:

Tworzymy plik za pomocą:

nano /usr/share/nginx/html/test.php

I wklejamy:

Uruchamiamy w przeglądarce:

http://ip_vps/test.php

Jeżeli ujrzymy coś takiego, to znaczy że serwer działa w 100%

Instalacja phpMyAdmin:

cd /usr/share/nginx/html/ && wget https://files.phpmyadmin.net/phpMyAdmin/4.9.2/phpMyAdmin-4.9.2-all-languages.zip && yum install -y unzip && unzip phpMyAdmin-4.9.2-all-languages.zip && mkdir phpMyAdmin && mv phpMyAdmin-4.9.2-all-languages/* phpMyAdmin && rm -rf phpMyAdmin-4.9.2-all-languages

Następnie wpisujemy w przeglądarce:

http://ip_vps/phpMyAdmin

I phpMyAdmin zainstalowany!

Dziękuje za przeczytanie poradnika, Jeżeli zrobiłem gdzieś błąd przepraszam.

Miłego korzystania z poradnika :)

* - Na dzień pisania poradnika jest to wersja 7.4

Źródła:

  • Wiedza własna
  • Poradniki dot. CentOSa
  • Zdjęcia z Google Grafika

Jeżeli poradnik się przyjmie, zrobię następny gdzie tworzymy vHosty, oraz vHosty z SSL + HTTP/2

FairGames
FairGames

Niekompletny poradnik :) Brak konfiguracji socketu fpm dla nginx. Ps. od rhel 8 używa się dnf, tym został zamieniony przynajmniej w centosie.

anon85678085
anon85678085

anon85678085:

Jeżeli poradnik się przyjmie, zrobię następny gdzie tworzymy vHosty, oraz vHosty z SSL + HTTP/2 Po instalacji według mojego poradnika działa PHP pod

http://ip/

Przykład test.php z mojego serwera świeżo po instalacji według poradnika (mojego):

image|623x500

vHosty z wszystkimi dodatkami będzie w następnym poradniku.