Dodatkowe repozytoria dla CentOS 8 i ich konfiguracja.
EPEL + MariaDB + NGINX + Remi repo (PHP).
EPEL repo
EPEL (Extra Packages for Enterprise Linux) to repozytorium, które dostarcza dodatkowe pakiety dla Enterprise Linux. Grupa EPEL z projektu Fedora jest odpowiedzialna za tworzenie i utrzymywanie wysokiej jakości zestawu dodatkowych pakietów dla RHEL oraz CentOS.
Konfiguracja repozytorium EPEL w CentOS 8 sprowadza się do doinstalowanie jednego pakietu rpm, czego efektem jest dodanie definicji repozytorium EPEL do pliku /etc/yum.repos.d/epel.repo
oraz włączenie repozytorium.
dnf install epel-release
W przypadku CentOS 8 zaleca się włączenie również repozytorium PowerTools, gdyż niektóre pakiety z EPEL mogą od niego zależeć.
dnf config-manager --set-enabled PowerTools
Aby wylistować wszystkie pakiety dostępne w repozytorium EPEL możemy użyć polecenia:
dnf repository-packages epel list |less
Repozytorium MariaDB
Na stronie producenta – mariadb.org – zawsze znajdziemy repozytorium z najnowszą wersją MariaDB dla CentOS 8.
Aby dodać repozytorium tworzymy plik /etc/yum.repos.d/MariaDB.repo
.
touch /etc/yum.repos.d/MariaDB.repo
z następującą zawartością:
[mariadb] name = MariaDB baseurl = http://yum.mariadb.org/10.4/centos8-amd64 gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB gpgcheck=1
Po utworzeniu pliku możemy zainstalować MariaDB poleceniemi:
dnf update dnf install boost-program-options dnf install MariaDB-server MariaDB-client --disablerepo=AppStream
Uruchamiamy MariaDB oraz ustawiamy tak, aby usługa była uruchamiana przy starcie systemu.
systemctl enable --now mariadb
Repozytorium Nginx
Na stronie nginx.org znajdziemy Nginx z gałęzi mainline (aktywnie rozwijana) oraz stable (tylko poprawki błędów). Producent zaleca używanie gałęzi głównej – mainline.
Instalujemy zależności:
yum install yum-utils
Aby skonfigurować repozytorium Nginx tworzymy plik /etc/yum.repos.d/nginx.repo
z następującą zawartością:
[nginx-stable] name=nginx stable repo baseurl=http://nginx.org/packages/centos/$releasever/$basearch/ gpgcheck=1 enabled=1 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true [nginx-mainline] name=nginx mainline repo baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/ gpgcheck=1 enabled=0 gpgkey=https://nginx.org/keys/nginx_signing.key module_hotfixes=true
Domyślnie używane jest repozytorium stable, jeśli chcemy użyć mainline, wydajemy komendę:
yum-config-manager --enable nginx-mainline
Instalacja nginx.
yum install nginx
Jesli zostaniemy poproszeni o zaakceptowania klucza GPG, sprawdzamy jego odcisk 573B FD6B 3D8F BC64 1079 A6AB ABF5 BD82 7BD9 BF62
, i jeśli się zgadza – akceptujemy.
Remi repo (PHP)
REMI jest repozytorium utworzonym i utrzymywanym przez Remi Collect. W repozytorium REMI zawsze znajdziemy między innymi najnowszą wersję PHP. Na stronie repozytorium REMI dostępny jest również łatwy w użyciu konfigurator, dzięki któremu możemy skonfigurować repozytorium REMI, tak aby umożliwić instalację kilku wersji PHP obok siebie.
CentOS 8 w oficjalnych repozytoriach dostarcza PHP 7.2. Tutaj pokażemy jak zainstalować PHP 7.3 – zastępując wersję z repozytoriów oficjalnych.
Aby skorzystać z repo REMI musimy również włączyć repozytorium EPEL (patrz wyżej).
Potrzebny nam będzie również pakiet yum-utils
dnf install yum-utils
Instalujemy pakiet konfigurujący repozytorium REMI.
dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
Włączamy repozytorium REMI.
dnf module disable php dnf module install php:remi-7.3
Aktualizujemy system:
dnf update
Instalacja PHP:
yum install -y php php-cli php-common
Instalacja PHP FPM:
yum install -y php-fpm
Instalacja modułów wymaganych przez WordPress:
yum install -y php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-date php-exif php-filter php-ftp \ php-gd php-hash php-iconv php-json php-libxml php-pecl-imagick php-mbstring php-mysqlnd php-openssl php-pcre php-posix \ php-sockets php-spl php-tokenizer php-zlib
żeby zainstalować epel wystrarczy polecenie dnf install epel-release, nie trzeba zapamiętywać linka 😉
Faktycznie, tak jest prościej. Zmienione. Dzięki 🙂