搭建swoft框架运行环境

1. 官方文档地址 https://github.com/swoft-cloud/swoft/blob/master/README_CN.md

安装swoft

image

手动安装composer安装 这两种方式任选其一,我们会看到项目下载到本地

image

注意:如果本地没有装swoole的开发环境会报错,推荐使用docker或docker-compose方式安装


没有swoole环境报错

docker环境安装

win10系统以下安装docker toolBox

https://blog.csdn.net/tina_ttl/article/details/51372604 // 有关docker更详细配置

  • docker toolbox 虚拟机配置
    docker安装成功后打开virtualbox虚拟机,默认会创建一个default虚拟机,右键打开 设置 ,设置共享目录(将我们项目所在的盘根目录作为共享目录,注意:此处必须设置为根目录),此处我项目放在F盘下面的目录,共享文件夹的名称必须写成 f ,必须写成 f ,必须写成 f ;勾选自动挂载,固定分配,防止下次启动重新配置
image

// 前提必须将f盘设为共享目录(注:只能将根目录设置为共享)

设置完共享文件夹后,重启虚拟机
docker-machine stop 停止
docker-machine start 开启
或者
docker-machine restart 重启

win10安装 docker for window

对于win10系统 docker有专门针对该系统的docker安装包,下载链接:
https://store.docker.com/editions/community/docker-ce-desktop-windows

docker方式安装

  • 如果本机(宿主机)开发目录已经存在swoft项目,并且vendor存在
  1. docker run -d -p 80:80 -v /$(pwd):/var/www/swoft --name swoft swoft/swoft // 开发环境和容器进行关联
  • 如果本机(宿主机)开发目录为空
  1. docker run -d --entrypoint="" -v /$(pwd):/var/www/swoft --name swoft swoft/swoft bash // 开发环境和容器进行关联
  2. docker exec -it swoft bash // 进入bash环境,如果报错尝试在开头添加winpty
  3. composer config -g repo.packagist composer https://packagist.phpcomposer.com // 配置composer镜像
  4. composer create-project swoft/swoft swoft // 下载项目,下载下来的项目根据需求做适当调整
  5. php bin/swoft start //启动swoft

注意:官网上面docker run -p 80:80 swoft/swoft启动容器是将swoft服务作为容器的进程,如果swoft进程退出,容器就会关闭,容器启动时根据Dockerfile文件会执行php /var/www/swoft/bin/swoft start命令,这个命令如果我们不和本地目录进行关联是没有问题的,当我们关联时如果本地目录没有swoft项目会报错Could not open input file: /var/www/swoft/bin/swoft
使用--entrypoint=""默认覆盖掉容器里面php /var/www/swoft/bin/swoft bash命令,后面跟bash是让容器使用bash做前置服务,防止容器执行完自动推出,然后我们进入容器在下载项目,手动启动swoft服务
官方的例子能让我们快速的看到swoft的效果,需要开发时我们还需要做相应修改

docker-compose 安装

  • 执行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环境
  • docker-compose exec swoft bash // 进入bash环境
  • 执行composer install 安装扩展
  • php bin/swoft start 启动服务

最后感谢bigCat大佬的指点,特意在这里总结下,防止后来的人踩坑。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,681评论 5 474
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,710评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,623评论 0 334
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,202评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,232评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,368评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,795评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,461评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,647评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,476评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,525评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,226评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,785评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,857评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,090评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,647评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,215评论 2 341