docker下php找不到php.ini 安装swoole
echo phpinfo();找到ini的path:(/usr/local/etc/php )
在里面的conf.d中创建docker-php-ext-mysqli.ini文件里加上
extension=swoole.so
------------------------------------------------------------------------------------------------
下载swoole:
http://pecl.php.net/package/swoole
解压:cd swoole-src-swoole-1.7.6-stable/
phpize
./configure --enable-async-mysql --with-php-config=/usr/local/bin/php-config
make && make install
------------------------------------------------------------------------------------------------
docker上传:
1.commit制作镜像
2.push上传
------------------------------------------------------------------------------------------------
docker创建php容器时要把需要暴露的接口写上
docker run -d -p 9000:9000 -p 9501:9501 --name php7 -v /home/ubuntu/nginx/www:/www php7.2:v1
------------------------------------------------------------------------------------------------
服务器运行:
$server = new swoole_websocket_server("0.0.0.0", 9501);
$server->on('open', function (swoole_websocket_server $server, $request) {
echo "server: handshake success with fd{$request->fd}\n";
});
$server->on('message', function (swoole_websocket_server $server, $frame) {
echo "receive from {$frame->fd}:{$frame->data},opcode:{$frame->opcode},fin:{$frame->finish}\n";
$server->push($frame->fd, "这是服务器消息!");
});
$server->on('close', function ($ser, $fd) {
echo "client {$fd} closed\n";
});
echo 1;
$server->start();
------------------------------------------------------------------------------------------------
网页运行
var socket = new WebSocket('ws://192.168.176.131:9501/');
// 打开Socket
socket.onopen = function(event) {
// 发送一个初始化消息
socket.send('我是客户端并且正在监听。');
// 监听消息
socket.onmessage = function(event) {
console.log('客户端接收到一个消息。',event);
};
// 监听Socket的关闭
socket.onclose = function(event) {
console.log('客户端通知套接字已关闭。',event);
};
// 关闭Socket....
//socket.close();
};
------------------------------------------------------------------------------------------------
cat ~/.docker/config.json //查看login docker仓库信息
docker login registry.cn-hangzhou.aliyuncs.com/stoicer/php
docker ps -a
docker commit [CONTAINER ID] [name]:[tag]
docker images
sudo docker push registry.cn-hangzhou.aliyuncs.com/stoicer/nginx:1.11.1
docker安装swoole和images上传
最新推荐文章于 2024-03-21 06:55:38 发布