# 基于docker的webman-jsonrpc 我们在`php:8.1-cli`基础上安装了运行webman必要的一些扩展和开发中常用的扩展,以及composer,制作成`workerman:8.1`镜像,因此在开发环境中不需要再额外配置php环境,直接写业务代码即可。 ## 依赖 只要系统环境中有docker即可,不需要安装php环境 ## 使用方法 ```sh # 初始化 ./init # composer ./composer install ./composer require xxxx # 服务控制 ./server start|restart|stop|status|reload|connections|logs # 自动生成.env.example文件 ./envexample # 执行其它php命令 ./php -m ./php webman build:bin ``` ## 一些有用的文件 | 文件 | 作用 | 用法或说明 | |---|---|---| |composer|调起容器中的`composer`命令的shell脚本|用法与主机中的compose完全一致,`./composer $args...`| |server|服务控制脚本|`./server`可以查看用法| |php|调起容器中的`php`命令的shell脚本|用法与主机中的php一致,但注意执行`./php start.php start`命令时不要加-d参数| |docker-compose.yml|运行容器的编排文件|| |php.ini|映射到容器中的php.ini配置文件|容器中已经安装的扩展都有单独的配置文件,这里不会有体现| ## 服务端口 在.env文件中可以定义服务端口,默认情况下docker容器是在host网络下启动的,当然,实际使用中也可以改成端口映射模式。 ## 已安装PHP扩展 ```sh php -m [PHP Modules] Core ctype curl date dom event exif fileinfo filter ftp gd hash iconv json libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql pdo_pgsql pdo_sqlite pgsql Phar posix readline redis Reflection session SimpleXML sockets sodium SPL sqlite3 standard tokenizer xlswriter xml xmlreader xmlwriter Zend OPcache zip zlib [Zend Modules] Zend OPcache ```