由於centOS7 已經不再維護,現在要繼續使用red hat的只能轉到rocky linux 或者amla linux。今天先以rocky linux 為主。雖然說大部分問chatGPT、gemini可以問出來,但他們給的答案有點略舊,且有些小錯誤,因此寫一版本正確的。


假如使用VPS安裝rocky linux的環節可以省略,直接在部屬主機時就能夠選擇了。

若是使用Windows的wsl的話,先到rockylinux官網下載,選擇wsl映像檔。

https://rockylinux.org/zh-TW/download

image.png

然後打開PowerShell 匯入 (目前已經假設windows已經有開啟wsl)

wsl --install --from-file  F:\Users\Downloads\Rocky-10-WSL-Base.latest.x86_64.wsl --name rocket10 --version 2

註解:

--from-file : 對應你的wsl映像檔路徑 (F:\Users\Downloads\Rocky-10-WSL-Base.latest.x86_64.wsl 替換這個路徑)

--name : 這個系統的名稱,可以隨意取名,用來識別。這邊就取名為rocket10。


下次要進入系統,就在PowerShell 輸入 wsl -d rocket10 


第一次進入系統時,它會讓你設定一個linux使用者名稱,可以隨意取。我這邊就取叫做aidec。(等於linux的useradd aidec 一樣,它簡化這塊流程)

不是用wsl的話,這邊可以使用以下指令來新建立使用者(aidec的部分,替換成你自己要的使用者名稱)

useradd aidec

passwd aidec

usermod -aG wheel aidec

套件更新

首次進入系統,先更新所有套件。(以前centOS是使用yum,rocky則是用dnf。基本上用法一樣,就是yum換成dnf而已)

sudo dnf update -y

安裝PHP8.5

先加 repo 來源 & Remi(PHP 8.5),PHP的官網可以找到指示步驟

https://www.php.net/downloads.php?usage=web&os=linux&osvariant=linux-redhat&version=8.5

php8.5 rocky linux

#建議是先裝個這個

sudo dnf install -y epel-release

#官網的指示

sudo subscription-manager repos --enable codeready-builder-for-rhel-$(rpm -E %rhel)-$(arch)-rpms

sudo dnf install -y dnf-plugins-core

sudo dnf install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm -E %rhel).noarch.rpm

sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-$(rpm -E %rhel).rpm

sudo dnf module reset php -y

sudo dnf module enable php:remi-8.5 -y


# Install PHP.

sudo dnf install -y php

這樣就裝好了,比以前部屬簡易很多。

安裝redis8.4

這邊就要注意一下,按照chatGPT指示安裝不了。它說用 

sudo dnf install redis 就可以,但我實測是不能直接這樣用的,在問它就跟我們說是因為rocky linux 10 太新,要我們降版本,但其實不是這樣,別被它騙了。

rocky linux 10 redis

事實上不是不支援,而是有多個版本可以選,但系統沒有預設版本,因此沒法自動安裝。

Redis 正確流程:

先看有哪些版本可以裝

sudo dnf module list redis

 image.png

可以看到有 7.2、8.0、8.2、8.4 .... 這邊就以8.4最新版的為主,若想裝其他版本,可以自行替換。

啟用想要的版本 例如這邊選8.4

sudo dnf module enable redis:remi-8.4

接著就能使用常規指令安裝了

#安裝redis

sudo dnf install redis

#啟動服務

sudo systemctl enable --now redis

#確認狀態

sudo systemctl status redis

安裝mongodb 8

先添加來源

sudo tee /etc/yum.repos.d/mongodb-org-8.0.repo <<EOF

[mongodb-org-8.0]

name=MongoDB Repository

baseurl=https://repo.mongodb.org/yum/redhat/9/mongodb-org/8.0/x86_64/

gpgcheck=1

enabled=1

gpgkey=https://www.mongodb.org/static/pgp/server-8.0.asc

EOF

安裝mongodb

sudo dnf install mongodb-org

# 啟動服務

sudo systemctl enable --now mongod

# 檢查安裝版本

mongod --version


安裝Composer

這個就不用多說,使用PHP必裝的。

#安裝Composer

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php composer-setup.php

sudo mv composer.phar /usr/local/bin/composer

composer -V

安裝nginx

#安裝nginx

sudo dnf install nginx

#啟動

sudo systemctl enable --now nginx


安裝PHP擴展

php-redis 安裝只需要一條指令,不像以前還要編譯老半天。

#安裝php-redis

sudo dnf install -y php-redis

php-mongo

#安裝php-mongo

sudo dnf install -y php-mongodb

其他常見的PHP擴展

#常見php 擴展

sudo dnf install -y \

php-curl \

php-fileinfo \

php-opcache \

php-intl \

php-bcmath \

php-gd \

php-zip \

php-mysqlnd \

php-pcntl \

php-posix \

php-sockets \

php-process \

php-exif \

php-soap \

php-imagick

啟動php-fpm 

sudo systemctl enable --now php-fpm

安裝git

sudo dnf install git

使用php workerman

這個非必須,只是我有在用就記錄一下。

#建立一個目錄

sudo mkdir /var/www/myproject

sudo mkdir /var/www/myproject/test

切換目錄

cd /var/www/myproject/test

# 將此目錄擁有者改為當前使用者 (aidec) ,這個很重要。

sudo chown -R $USER:$USER .


#使用workerman (上面步驟需要,不然會沒權限運行)

composer require workerman/workerman

#檢查是否滿足workerman環境測試

curl -Ss https://www.workerman.net/check | php

#理論上會出現

PHP Version >= 5.4.0                  [OK]

Extension pcntl check                 [OK]

Extension posix check                 [fail]


#安裝php-process就OK了

sudo dnf install php-process

簡易的web server

可以用來簡易測試用,正式運作還是要用php-fpm + nginx為佳。

cd 專案路徑

php -S 0.0.0.0:8000


#就可以在使用 http://localhost:8000 



建議安裝的

sudo dnf install nano



文章轉載或引用,請先告知並保留原文出處與連結!!(單純分享或非營利的只需保留原文出處,不用告知)

原文連結:
https://blog.aidec.tw/post/rocky-linux-10-php-redis-mongo-nginx
若有業務合作需求,可寫信至: [email protected]
創業、網站經營相關內容未來將發布在 小易創業筆記