@[TOC]
安裝Hyperf開發容器
docker run -d --name user_center \
--restart=always \
#對映到宿主機目錄,這樣我們就直接在/home/wwwroot/user_center開發
-v /home/wwwroot/user_center:/hyperf-skeleton \
# 9501提供http服務,9504提供json-rpc服務
-p 9501:9501 -p 9504:9504 \
-it --entrypoint /bin/sh \
hyperf/hyperf:7.3-alpine-cli
安裝Composer
docker exec -it user_center bash #進入容器
#下載COMPOSER
wget https://github.com/composer/composer/releases/download/1.9.0/composer.phar
#修改為可執行
chmod u+x composer.phar
#複製到/usr/local/bin/ 這樣就可以直接執行composer 命令
mv composer.phar /usr/local/bin/composer
#修改倉庫地址為阿里雲
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer
建立專案,以下命令都是在容器內部執行
cd /hyperf-skeleton
composer create-project hyperf/hyperf-skeleton=1.1.* #直接一路回車不安裝附加元件
安裝需要用到的元件
composer require illuminate/hashing gregwar/captcha \ hyperf/validation hyperf/translation hyperf/constants phper666/jwt-auth:~2.0.1 hyperf/config-aliyun-acm hyperf/json-rpc hyperf/rpc-server
illuminate/hashing laravel的hash元件
gregwar/captcha 驗證碼元件
hyperf/validation 官方驗證元件
hyperf/translation 多種語言元件
hyperf/translation 官方列舉類
phper666/jwt-auth JWT元件
hyperf/config-aliyun-acm 阿雲配置中心元件
hyperf/json-rpc hyperf/rpc-server 官方RPC服務元件
釋出元件配置
php bin/hyperf.php jwt:publish --config
php bin/hyperf.php vendor:publish hyperf/translation
php bin/hyperf.php vendor:publish hyperf/validation
配置專案
編輯專案根目錄的.env檔案,配置好資料庫和redis
APP_NAME=user_center
DB_DRIVER=mysql
DB_HOST=192.168.137.200
DB_PORT=3306
DB_DATABASE=user_center
DB_USERNAME=root
DB_PASSWORD=123456
DB_CHARSET=utf8mb4
DB_COLLATION=utf8mb4_unicode_ci
DB_PREFIX=
REDIS_HOST=192.168.137.200
REDIS_AUTH=(null)
REDIS_PORT=6379
REDIS_DB=0
開發環境下的熱更新
下載https://github.com/ha-ni-cc/hyperf-watch裡的watch檔案到專案根目錄,然後啟動只需要執行php watch,這樣我們修改檔案,就會自動重啟程式
資料表設計
建立表
目前我們只建立了兩個表user和wx_user詳見遷移檔案
user表
https://github.com/donjan-deng/la-user-cen...
wx_user表
https://github.com/donjan-deng/la-user-cen...
資料填充
我們初始化了一個管理員帳號
https://github.com/donjan-deng/la-user-cen...
執行遷移
建立資料庫
php bin/hyperf.php migrate
填充資料
php bin/hyperf.php db:seed
有關資料遷移的使用方法可參閱官方文件https://hyperf.wiki/#/zh/db/migration
專案原始碼
專案原始碼已釋出到github https://github.com/donjan-deng/la-user-cen...