win7 docker-toolbox 安装swoole环境

相关

  1. 系统: window7
  2. 编辑器: sublime3
  3. docker: 下载toolbox安装, ..略
  4. swoole是php扩展
  5. swool 不支持在windows安装
  6. 使用docker运行swoole代码
  7. 参考: What's the best way to share files from Windows to Boot2docker VM

登录docker-machine :

  1. 命令: docker-machine ssh default 登录docker-machine
  2. 查看ip: ifconfig

安装并启动容器 twosee/swoole-coroutine


# 查看已有镜像
docker images

# 查看已有容器
# -a 表示查看所有容器, 包括未运行的容器, 查看当前运行的容器可去掉
docker ps -a

# --name 容器别名
# -d 后台运行
# -v 挂载文件夹到容器
# /c/Users/oo/Documents/Kitematic/swoole 此文件夹是window7共享到boot2docker虚拟机的文件夹
# /root 表示将第一个文件夹挂载到容器的/root目录. 进入容器/root目录可浏览上一步的目录
# -p 端口映射, 第一个是虚拟机端口, 第二个是容器端口

docker run -ti -d --name=swoole twosee/swoole-coroutine -v /c/Users/oo/Documents/Kitematic/swoole:/root -p 9502:9502 php /root/server.php

编辑代码并运行

  1. 在win7 使用编辑器打开/c/Users/oo/Documents/Kitematic/swoole目录
  2. 编辑代码
// server.php
// websocket 服务器
$ws = new swoole_websocket_server('0.0.0.0', 9502);
$ws->on('open', function ($ws, $request) {
    $ws->push($request->fd, 'connect success');
});
$ws->on('close', function ($ws, $fd) {
    echo "fd: $fd close";
});
$ws->on('message', function ($ws, $frame) {
    $ws->push($frame->fd, "server: " . $frame->data);
});
$ws->start();
// html 客户端
var ws = new WebSocket("ws://虚拟机ip:9502");
ws.onmessage = function (e) {
    console.log(e.data);
}

docker-compose 配置 (2019.8.21)

  1. 目录结构
    	- app
    	  - src
    	    index.php
    	  docker-compose.yml
    
  2. docker-compose 配置
    	version: "3.4"
    	services:
    	  swoole:
    		image: twosee/swoole-coroutine:latest
    		volumes:
    		  # docker-machine ssh default
    		  # 查找当前目录并替换 ./
    		  - ./:/app
    		ports:
    		  # 第一个9502 是windows的访问端口, 可以自定义
    		  # 第二个9502 是swoole容器中启动的端口, 在index.php设置
    		  # 通过 http://192.168.99.100:9502 访问
    		  # websocket url: "ws://192.168.99.100:9502"
    		  - 9502:9502
    		entrypoint: ["php", "/app/index.php"]
    
  3. 进入目录, docker-compose.exe up

转载于:https://my.oschina.net/u/3264882/blog/1811440

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值