1. 程式人生 > >學習PHP-MSF:搭建開發環境

學習PHP-MSF:搭建開發環境

以下是操作過程:

  • 公網地址: 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