栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

使用Docker搭建Swoole环境

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用Docker搭建Swoole环境

文章目录
        • 前言
        • Dockerfile编写
        • 构建镜像
        • 测试文件
        • 使用swoole启动测试文件

前言

swoole是有提供docker 镜像的
但是我喜欢自己尝试一下

Dockerfile编写

这里构建在php的cli镜像之上
使用 install-php-extensions 给php安装了redis gd swoole扩展
install-php-extensions 是我从github上先下载到本地的,因为使用ADD下载报错了
install-php-extensions 和 Dockerfile放在同一目录
设置容器工作目录为 /var/www/html/swoole

FROM php:7.4-cli
# 这个是因为ADD从github下载出错,我才通过 wget install-php-extensions 下载下来后,再拷贝到容器内
# 如果ADD github 没有问题
# 可以换成 ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
COPY install-php-extensions /usr/local/bin
RUN chmod +x /usr/local/bin/install-php-extensions && 
    install-php-extensions gd redis swoole
WORKDIR /var/www/html/swoole

构建镜像

根据当前目录下的Dockerfile构建镜像 镜像标签为xrx/swoole
在Dockerfile下执行下面语句

docker build -t xrx/swoole .
测试文件

我将测试文件起名为index.php
将其放在 /var/www/html/swoole 目录

$service = new SwooleHttpServer('0.0.0.0',9501);    
$service->on('Request', function ($request, $response) { 
$response->header('Content-Type', 'text/html; charset=utf-8');        
$response->end('Hello Swoole. #' . rand(1000, 9999) . '');    
});
$service->start();
使用swoole启动测试文件

通过-v将本地代码目录与容器工作目录绑定
通过php index.php 启动工作目录中的index.php 文件
创建了端口号为9501的http服务
通过 -p 将本地9501端口与容器9501端口映射
这样外部即可通过9501访问http服务

docker run -v /var/www/html/swoole:/var/www/html/swoole -p 9501:9501 xrx/swoole php index.php

```
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/974834.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号