Docker容器下快速搭建Hyperf框架在Windows系統的本地開發環境

gxcuizy發表於2021-11-30

Hyperf框架介紹

Hyperf是一個高效能、高靈活性的漸進式 PHP 協程框架,內建協程伺服器及大量常用的元件,效能較傳統基於PHP-FPM的框架有質的提升,提供超高效能的同時,也保持著極其靈活的可擴充套件性,標準元件均基於PSR標準實現,基於強大的依賴注入設計,保證了絕大部分元件或類都是可替換可複用的。

Docker下開發


假設您的本機環境並不能達到Hyperf的環境要求,或對於環境配置不是那麼熟悉,那麼您可以通過以下方法來執行及開發Hyperf專案,這裡我們主要說明在Windows作業系統下的開發。

下載並安裝docker


Windows系統中進行開發,我們需要先安裝docker for windows,首先直接進入docker官網:https://www.docker.com
然後依次點選:Get started -> Download for Windows,即可下載docker
下載包可能比較大,如果網路不太好的話需要耐心等待一下,待下載完畢後直接下一步安裝

啟動報WSL2問題


安裝完畢後,第一次開啟可能會報WSL2問題,直接按照提示裡的URL地址開啟,
,下載適用於x64計算機的WSL2 Linux核心更新包 ,下載完畢後也是直接安裝然後重啟docker客戶端即可

拉取docker映象(hyperf官方)

這裡我們使用的命令列工具是powershell,同時按win + r,再輸入powershell後回車,即可開啟命令列工具
然後在命令列中輸入:docker pull hyperf/hyperf:7.4-alpine-v3.11-swoole,下載完docker映象後,我們可以使用docker image ls檢視映象列表,也可以在docker客戶端的Images看到。

將本機專案目錄繫結到映象內的目錄

假設在我本機電腦的目錄D:\project\hyperf下是hyperf的專案,並且埠是預設的9501,現在我們將這個目錄繫結到docker映象中,即可實現在docker中開發,命令如下:
docker run -d --name hyperf -v D:\project\hyperf:/data/hyperf -p 9501:9501 -it --privileged -u root --entrypoint /bin/sh hyperf/hyperf:7.4-alpine-v3.11-swoole
由於我們前面已經拉取了映象,所以這個命令會建立一個名為hyperf的容器,我們使用命令dcoker ps即可看到我們剛執行的容器的NAMEShyperf,而且埠號是9501

進入容器


前面我們已經建立了一個名為還有hyperf的專案,所以我們需要執行命令docker exec -it hyperf bash即可進入專案映象中

在容器內安裝Composer

首先下載composer.phar,可以通過以下方式下載,composer不同版本的檢視地址https://github.com/composer/composer/releases
wget https://github.com/composer/composer/releases/download/2.1.12/composer.phar
php -r "readfile('https://getcomposer.org/installer');" | php
下載完成後,再執行命令chmod u+x composer.phar給加上執行許可權
再執行命令列mv composer.phar /usr/local/bin/composer,將composer.phar移動至/usr/local/bin目錄下並改名為composer,即可實現全域性呼叫了
然後執行命令composer,即可測試是否安裝成功

設定Composer國內映象

阿里雲映象 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
騰訊雲映象 composer config -g repo.packagist composer https://mirrors.cloud.tencent.com/composer
國內Composer映象 composer config -g repo.packagist composer https://packagist.phpcomposer.com
接觸映象繫結並恢復到官方映象 composer config -g --unset repos.packagist

啟動Hyperf服務


由於我們的專案是繫結在映象目錄是/data/hyperf,所以,我們再執行cd /data/hyperf即可進入專案目錄中
然後再執行命令php bin/hyperf.php start,即可啟動服務,如果有報錯資訊,根據錯誤資訊依次解決然後再重啟即可
啟動服務後,可以同時按Ctrl+C,即可停止服務

測試服務


服務啟動後,直接在瀏覽器位址列中輸入127.0.0.1:9501,然後能正常訪問,說明服務已經啟動成功了,到此說明開發環境基本搭建完成,可以愉快的Coding了……

相關文章