alpine php docker images with swoole, protobuf, kafka, amqp, YAF, zookeeper, grpc, php5-php8.2
8.0K
alpine php docker images with pdo gd,tesserat ocr, FFI SWOOLE,YAF, zookeeper, support php5.3 php5.6 php7.0 php7.1 php7.2 php7.3 php7.4, php8.0, php8.1 and latest php 8.2 support.
alpine php ocr, tesseract on alpine linux, ocr on linux , tiny php ocr container.
mongodb protobuf rdkafka swoole imagick amqp , ffi etc.
最新版本的镜像支持 php.ini 和 php-fpm(/usr/local/etc/php-fpm.d/www.conf)中所有配置项的环境变量自动配置
注意php.ini 文件中的配置项需要添加前缀 PHPINI_, www.conf中的环境配置项需要添加前缀FPMCONF_ , 配置项中如果有. 的需要将.转换为 __ (即2个下划线)
xdebug, seaslog 插件的配置按照相关插件里面的配置项目直接转换为大写 . 转换为__ 即可 .
对应文件 /usr/local/etc/php/php.ini
如需要修改 upload_max_filesize = 2M 的配置为 200M,则使用的环境变量配置项为
PHPINI_UPLOAD_MAX_FILESIZE=200M
对应文件 /usr/local/etc/php-fpm.d/www.conf
示例: 原配置项: pm.max_children = 5
环境变量: FPMCONF_PM__MAX_CHILDREN = 16
原配置项: pm = dynamic
环境变量: FPMCONF_PM="dynamic"
Possible Values: ; static - a fixed number (pm.max_children) of child processes; ; dynamic - the number of child processes are set dynamically based on the ; following directives. With this process management, there will be ; always at least 1 children.....
对应文件 扩展目录中的seaslog.ini
示例: 原配置项: seaslog.remote_host = "127.0.0.1"
环境变量: SEASLOG_REMOTE_HOST = "127.0.0.1"
对应文件 扩展目录 yaconf.ini
YACONF_DIRECTORY 默认值 /opt/yaconf/
更多使用说明 https://github.com/laruence/yaconf
seaslog mongodb protobuf rdkafka swoole imagick amqp yaconf zip memcached hprose
默认开启xdebug远程调试,
使用时需要增加 -e MYHOST="你的开发机器的IP地址" 默认端口 9003 , 如果是使用vscode则还需要安装vs插件 PHP Debug 和浏览器插件xdebug-helper-for-chrome
https://marketplace.visualstudio.com/items?itemName=xdebug.php-debug
https://github.com/tekintian/xdebug-helper-for-chrome
vscode配置 .vscode/launch.json
{
"version": "0.2.0",
"configurations": [
{
"name": "Xdebug远程调试",
"type": "php",
"request": "launch",
"port": 9003,
"pathMappings": { // server(你的PHP代码在服务器上面的路径) -> local(你的PHP代码在你本机上面的路径)
"/var/html/www": "${workspaceFolder}"
},
"hostname": "你的开发机器的IP地址"
}
]
}
_dev分支是包含了 composer 和git的开发版本, 由于额外安装了git 和composer组件,所以体积有点大, 建议仅本地开发使用.
seaslog mongodb protobuf rdkafka swoole imagick amqp yaconf zip memcached hprose composer
根据后缀和版本不同,不同的tag集成的模块和扩展都不一样,具体可通过如下命令查看
docker run --rm -it tekintian/alpine-php:8.1.13_3.17_si php -m
docker run --rm -it tekintian/alpine-php:7.4.33_3.15_protobuf_swoole_kafka php-fpm -m
Small. Simple. Secure.
Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox. More info?:
This php docker images base on alpine linux and support php-5.6, php-7.0, php-7.1, php-7.2, php-7.3-rc and work in php-fpm. and compile the most usefull php ext supported, gd, mysql, pdo-mysql, pdo-sqlite etc.
# 最新稳定版PHP容器运行命令
docker run --name phpfa -it -d --link some-mysql:mysql -v /home/localAppPath:/home/wwwroot tekintian/alpine-php
参数说明:
-it -d 容器以交互式后台运行
--name 你的PHP容器的名字,phpfa 可以随意指定
-v /home/localAppPath:/home/wwwroot 持久化数据 /home/localAppPath 为你的本地的网站目录, /home/wwwroot 为容器的工作目录,不可修改 -v参数详细说明文档
--link some-mysql:mysql 连接你的名字为 some-mysql的mysql/mariadb容器,【此项可选添加, 如果不连接数据库容器的话你的PHP连接数据库的时候数据库服务器地址就只能使用IP或者公网域名,不能使用指定的容器名称或者别名, 详见Docker官方文档 】 ;
*g 的为PHP官方默认配置的版本, 其他的为增加了自定义配置的版本
short_open_tag = Off
error_reporting = E_ALL & ~E_NOTICE
display_errors = On
track_errors = On
cgi.force_redirect = 0
cgi.fix_pathinfo = 1
fastcgi.impersonate = 1
cgi.rfc2616_headers = 0
upload_max_filesize = 200M
max_file_uploads = 200
post_max_size = 80M
date.timezone = PRC
max_execution_time = 300
max_input_time = 600
memory_limit = 256M
.......
mongodb
mysqli
mysqlnd
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
memcached
redis
各个版本的php和分支支持的模块不一样, 详情自行通过以下命令获取
# 替换 7.4.33_3.15_pksi为你要查看的分支即可
docker run --rm tekintian/alpine-php:7.4.33_3.15_pksi php -m
#查看运行日志
docker logs phpfa
#进入容器
docker exec -it phpfa sh
# 修改容器后保存镜像
docker commit phpfa YourDockerImagesName
# 查看端口使用情况
netstat -ntlp | grep 9000
支持中文,英文 , equ,osd 4种语言的OCR识别
tesseract --list-langs List of available languages (4): chi_sim eng equ osd
[php编译安装详解](./docs/php-compile-desc.md)
需要其他的特定环境或则模块支持,可联系定制开发容器 , Email: [email protected] QQ:932256355
Content type
Image
Digest
sha256:aa5067fc9…
Size
37.3 MB
Last updated
about 1 year ago
docker pull tekintian/alpine-php