隨著公司專案的茁壯成長,所需要的功能越來越多。swoole的使用也就呼之欲出了!laravel框架目前比較好使用swoole的方案應該非laravels莫屬了。自熱而然的鄙人想到使用laravel+laravels+nginx+supervisor,打造一個簡潔、易用、可擴充套件的docker-compose檔案,供各位客官使用。
使用方法
基礎配置(以安裝好docker-compose的同學們,可以跳過此步驟)
- 安裝Docker(官方預設會自帶docker-compose 工具), 已經安裝過的可以跳過此步
- 對Docker Machine 設定裡,配置
Setting->Daemon->Registry mirrors
,增加加速器URL,比如http://xxxx.m.daocloud.io - 對Docker Machine 設定裡,配置
Setting->Shared Drives(Windows)/File Sharing(Mac)
,
Docker-php的使用
- 複製example.env到同級目錄下,並重新命名.env,命令操作
cp ./example.env ./.env
- 修改.env檔案的配置。
LOCAL_STOARGE_PATH
=設定為此github clone的根目錄。 比如/var/www/html/docker-php - 修改.env檔案的配置。
LOCAL_WEB_PATH
=設定為你開發專案的基礎根目錄, 比如/var/www/html/docker-php/www - 把要啟動的程式,比如laravels 或者php 的supervisor配置檔案加入到 /var/www/html/docker-php/supervisor/conf
- 啟動docker-composer
docker-compose up -d
nginx的使用
- 多個虛擬站點的配置,直接參考nginx/conf.d/demo.cfg, 複製貼上demo.cfg在同目錄下並重名為site1.conf, 並根據註釋修改目錄路徑(以容器目錄為準),重新命名檔案必須以
conf
副檔名結尾, 舉例命令列 - nginx 的錯誤日誌目錄在 /var/www/html/docker-php/log/nginx
php的使用
- 【Seaslog】的配置範本檔案在宿主機php/ext/ini/seaslog.ini裡,根據註釋複製一下,然後進入PHP容器修改容器內的檔案
/usr/local/etc/php/conf.d/docker-php-ext-seaslog.ini
即可, 命令如下 - php 中使用composer
docker-compose exec php bash composer install
supervisor 的使用
- supervisor 啟動日誌目錄 /var/www/html/docker-php/log/supervisor
- supervisor 程式啟動目錄 /var/www/html/docker-php/supervisor/conf
- supervisor 的基本使用命令介紹
//進入php容器內 docker-compose exec php bash //啟動某個程式(program_name=你配置中寫的程式名稱) supervisorctl start program_name //檢視正在守候的程式 supervisorctl //停止某一程式 (program_name=你配置中寫的程式名稱) supervisorctl stop program_name //重啟某一程式 (program_name=你配置中寫的程式名稱) supervisorctl restart program_name //停止全部程式 supervisorctl stop all
在這裡特別鳴謝php界的暖男(laravels的作者),並附上專案地址:https://github.com/hhxsv5/laravel-s