1. 官方文檔地址 https://github.com/swoft-cloud/swoft/blob/master/README_CN.md
安裝swoft
手動安裝
和 composer安裝
這兩種方式任選其一,我們會看到項目下載到本地
注意:如果本地沒有裝swoole的開發(fā)環(huán)境會報錯陪白,推薦使用docker或docker-compose方式安裝
沒有swoole環(huán)境報錯
docker環(huán)境安裝
win10系統(tǒng)以下安裝docker toolBox
https://blog.csdn.net/tina_ttl/article/details/51372604 // 有關docker更詳細配置
- docker toolbox 虛擬機配置
docker安裝成功后打開virtualbox虛擬機,默認會創(chuàng)建一個default虛擬機超全,右鍵打開 設置 岂贩,設置共享目錄(將我們項目所在的盤根目錄作為共享目錄炒考,注意:此處必須設置為根目錄)取胎,此處我項目放在F盤下面的目錄挠进,共享文件夾的名稱必須寫成 f 边锁,必須寫成 f 矾麻,必須寫成 f 纱耻;勾選自動掛載,固定分配险耀,防止下次啟動重新配置
// 前提必須將f盤設為共享目錄(注:只能將根目錄設置為共享)
設置完共享文件夾后弄喘,重啟虛擬機
docker-machine stop
停止
docker-machine start
開啟
或者
docker-machine restart
重啟
win10安裝 docker for window
對于win10系統(tǒng) docker有專門針對該系統(tǒng)的docker安裝包,下載鏈接:
https://store.docker.com/editions/community/docker-ce-desktop-windows
docker方式安裝
- 如果本機(宿主機)開發(fā)目錄已經(jīng)存在swoft項目甩牺,并且vendor存在
-
docker run -d -p 80:80 -v /$(pwd):/var/www/swoft --name swoft swoft/swoft
// 開發(fā)環(huán)境和容器進行關聯(lián)
- 如果本機(宿主機)開發(fā)目錄為空
-
docker run -d --entrypoint="" -v /$(pwd):/var/www/swoft --name swoft swoft/swoft bash
// 開發(fā)環(huán)境和容器進行關聯(lián) -
docker exec -it swoft bash
// 進入bash環(huán)境蘑志,如果報錯嘗試在開頭添加winpty
-
composer config -g repo.packagist composer https://packagist.phpcomposer.com
// 配置composer鏡像 -
composer create-project swoft/swoft swoft
// 下載項目,下載下來的項目根據(jù)需求做適當調整 -
php bin/swoft start
//啟動swoft
注意:官網(wǎng)上面
docker run -p 80:80 swoft/swoft
啟動容器是將swoft服務作為容器的進程,如果swoft進程退出急但,容器就會關閉澎媒,容器啟動時根據(jù)Dockerfile
文件會執(zhí)行php /var/www/swoft/bin/swoft start
命令,這個命令如果我們不和本地目錄進行關聯(lián)是沒有問題的波桩,當我們關聯(lián)時如果本地目錄沒有swoft項目會報錯Could not open input file: /var/www/swoft/bin/swoft
戒努,
使用--entrypoint=""默認覆蓋掉容器里面php /var/www/swoft/bin/swoft bash
命令,后面跟bash
是讓容器使用bash
做前置服務镐躲,防止容器執(zhí)行完自動推出储玫,然后我們進入容器在下載項目,手動啟動swoft服務
官方的例子能讓我們快速的看到swoft的效果萤皂,需要開發(fā)時我們還需要做相應修改
docker-compose 安裝
- 執(zhí)行
git clone https://github.com/swoft-cloud/swoft
命令撒穷,下載swoft框架 - 編輯docker-compose.yml文件如下
version: '3'
services:
swoft:
container_name: swoft
image: swoft/swoft:latest
ports:
- "80:80"
volumes:
- ./:/var/www/swoft
stdin_open: true
tty: true
privileged: true
entrypoint: ["bash"]
-
docker-compose up -d
// 啟動swoft環(huán)境 -
docker-compose exec swoft bash
// 進入bash環(huán)境 - 執(zhí)行
composer install
安裝擴展 -
php bin/swoft start
啟動服務
最后感謝bigCat大佬的指點,特意在這里總結下裆熙,防止后來的人踩坑端礼。