學習PHP-MSF:搭建開發環境
阿新 • • 發佈:2019-02-20
以下是操作過程:
- 公網地址:
docker pull registry.cn-hangzhou.aliyuncs.com/pinguo-ops/php-msf-docker:latest
- 阿里雲經典內網:
docker pull registry-internal.cn-hangzhou.aliyuncs.com/pinguo-ops/php-msf-docker:latest
- 阿里雲VPC網路:
docker pull registry-vpc.cn-hangzhou.aliyuncs.com/pinguo-ops/php-msf-docker:latest
- DockerHub(國外):
docker pull pinguoops/php-msf-docker
- Full映象(包含MongoDB和RabbitMQ):
docker pull registry.cn-hangzhou.aliyuncs.com/pinguo-ops/php-msf-docker:full
應該拉取Full映象(未測試),我拉取的是公網映象,這裡面的php-fpm服務啟動失敗,檢視日誌,php.d/amqp.ini中引用了extension=amqp.so,但相應的目錄中缺少amqp.so擴充套件,安裝rabbitMQ擴充套件
3、部署容器
在 Docker 中安裝部署,直接用他的 Docker 映象:
-p 2201:22
:為了方便 ssh 登入容器開放的埠對映,不用也無所謂的,因為可以使用docker exec
-p 81:8000
:主要是將容器的 8000 埠(phpmsf 預設監聽埠)映射出來,這個埠可以改,根據改的埠-v
:主要是為了開發時間方便檔案對映,/home/worker/data/www/
是預設的 web 檔案目錄,根據改的目錄
docker run -dit --name phpmsfdemo -p 2201:22 -p 81:8000 -v /data/webroot/:/home/worker/data/www/ registry.cn-hangzhou.aliyuncs.com/pinguo-ops/php-msf-docker
php-msf 啟動了swoole server,經測試:php-msf server本身不需要nginx和php-fpm的執行就能提供web服務,未深入研究
登入docker 映象伺服器:ssh -p 2201 [email protected]
使用者賬號:worker-worker,root-root
4、部署程式碼
選擇安裝包下載目錄
$ cd /home/worker/data
拉取安裝包
$ git clone https://github.com/pinguo/php-msf-docker.git
執行安裝,下載框架和應用目錄
$ php installer.php start
選擇安裝目錄和應用名稱,配置server埠
如服務未啟動,進入/home/worker/data/www,執行:
$ php server.php start
5、執行
容器中:localhost:8000/welcome,宿主機:localhost:81/welcome
手動修改服務埠:/home/worker/data/www/config/http.php