- PHP >= 7.1.3
- OpenSSL PHP Extension
- PDO PHP Extension
- Mbstring PHP Extension
- Tokenizer PHP Extension
- XML PHP Extension
- ZipArchive PHP Extension
- ext-curl PHP Extension
- npm >= 3.10.0
- Yarn
以下為 開發環境 安裝指南,欲部署到正式機,請至 Deployment。
- 從 Github Clone 到本機。
git clone [email protected]:s9801077/Equipment-management-system.git
cd Equipment-management-system
- 複製
.env.example至.env。
cp .env.example .env
- 至
.env設定資料庫登入資訊,請將以下設定依照開發環境修改。
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret- 安裝 PHP 與 Node 相依套件。
composer install
yarn install
- 產生 App Key。
php artisan key:generate
- 產生資料表與假資料,如果不想產生假資料,請移掉
--seed參數。
php artisan migrate --seed
可用以下指令建立操作類別(無建立假資料)
php artisan db:seed --class=SystemLogTypeTableSeeder
- 編譯前端資源與執行內建的開發用伺服器
yarn run watch
php artisan serve
到這裡就完成安裝。
yarn run dev # run dev mode
yarn run watch # run watch mode
yarn run prod # run deploy
使用瀏覽器開啟 http://127.0.0.1:8000 就會看到登入畫面,預設的帳號密碼如下:
Account: [email protected]
Password: admin12345
部署流程跟 Installation 差不多,只有以下幾點要注意。
-
請將網頁伺服器虛擬主機跟目錄指向專案跟目錄中的
public。 -
網頁伺服器務必設定好
Rewrite。 -
如果不要有假資料,請於執行
php artisan migrate不要加上--seed -
設定資料夾權限
chmod 777 -R storage bootstrap/cache- 前端資源編譯指令改使用這個
yarn run prod
詳細使用方式可以參考 Laravel 官網說明
請先至 .env 進行環境參數設定
Slack_HOOK_URL // 支援 slack 通知,可以在 deploy 完成傳送 slack web hook
SLACK_CHANNEL // 設定通知的 slack channel
SERVER_NAME // 設定要 deploy 的 server 格式可以是 [email protected] or xxx.xxx.com
- Deploy production: envoy run production-cms --branch=master
- Deploy testing: envoy run testing-cms --branch=develop
- 記得設定排程。
- 記得執行 Queue 的處理指令。
請將以下設定修改路徑後新增至 Cron。
*/1 * * * * root php /home/ems/test/artisan schedule:run >> /dev/null 2>&1
-
將
.env中的QUEUE_DRIVER設定修改為database。 -
執行 Queue 指令 如果你是本機要用,可以直接執行
php artisan queue:listen如果是正式機要用, 可以使用以下指令:
screen -S ems php artisan queue:listen
screen 是一個管理背景執行的套件。
- 在 .env 設定
TELEGRAM_TOKEN與BOT_WEB_HOOK_HASH(BOT_WEB_HOOK_HASH請自行設定隨機字串,此字串將用於給 Telegram 呼叫的 web hook) - 執行
php artisan ems:set-telegram-hook將 web hook 設定到 Telegram
標示 [private] 的為僅允許在個人頻道使用。
- saveId: 儲存頻道 ID
- whoAmI: 顯示自己的 ID
[private]
詳細 Telegram bot 說明可洽 WIKI
請遵照 Git Flow 流程,從 develop 創建一個分支、提交變更並開 Pull Request。
請遵守 PSR-2 的規範,以統一專案內程式碼的風格,雖然我們有設定 StyleCI 修正錯誤的格式,但請將它當作最後防線。
- 任何
.vue的組件檔案名稱大寫駝峰式。 - 獨立一個頁面一個資料夾且名稱為小寫駝峰,每個獨立頁面的根組件與其上層資料夾同名。
- 路由名稱與頁面資料夾名稱相同。
- 為於
components資料夾內的組件會自動註冊,各別頁面所切出來的請自行於各別的根組件註冊。
- 建立環境:
make run-dev- watch mode:
make run-watch- build dev:
make run-build-dev- install js packages:
make run-yarn-installor just run yarn install
- 建立資料庫 table
make run-migrate- 建立假資料
make run-seed- 清除 docker
make stop-dev-
docker-compose 用於建立整個專案的前後端環境、資料庫、網頁伺服器
-
Dockerfile 用於後端 PHP 部署
-
url: http:localhost:81
- 安裝 php composer 相關套件
composer install- 啟用 docker-compose
docker-compose up -d --build- 建立資料庫 table
docker-compose exec php sh -c "php artisan migrate"- 建立假資料
docker-compose exec php sh -c "php artisan db:seed"- 結束 docker-compose
docker-compose down- 完整清除 docker
docker-compose down -v- install packages:
docker-compose exec node sh -c "yarn install"or just run yarn install
- watch mode:
docker-compose exec node sh -c "yarn run watch"- build dev:
docker-compose exec node sh -c "yarn run dev"The MIT License (MIT). Please see License File for more information.