laravel-dockerize-scaffold
v1.3.8
Published
Use this scaffold to dockerize all kind of Laravel Project
Downloads
12
Readme
脚手架生成流程
定义构建镜像过程的配置
- 提示用户选择php版本,目前支持php71和php74
- 展示当前php基础镜像已安装的php扩展
- 提示用户输入需要额外的扩展, 以空格分隔开
- 需要通过PHP_EXT去安装的
- 需要通过pecl安装的
- 校验用户输入的扩展名称
- 提示用户指定生成文件夹路径,默认当前目录
- 提示用户是否使用了GOOGLE_CREDENTIALS配置文件
- 通过build_args.env.example 生成build_args.env
- 复制Dockerfile
- 复制Makefile
- 复制.dockerignore文件
- 复制docker文件夹
定义部署的过程用于生成部署数据
- 询问用户是否用于本地开发
- 若是本地环境则询问用户指定laravel项目所在的路径,默认当前路径
- 询问用户获取项目名(需要定一个格式)
- 分配项目的端口号
- 定义php日志路径
- 定义nginx日志路径
- 输出start.env文件到当前目录,便于启动docker-compose
- 复制启动脚本命令
本地调试
- 运行命令
npx egm-laravel-scaffold-init -h
命令参数说明
egm-laravel-scaffold-init
-pv, --phpversion <phpversion> 提供php的版本
-pe, --phpexts <phpexts> 提供需要安装的php扩展, 以,分隔
-ppe, --phppeclexts <phppeclexts> 提供需要通过pecl安装的php扩展, 以,分隔
-gc, --googlecredential <googlecredential> 是否需要使用google credential, true or false
-od, --outputdir <outputdir> 提供输出文件夹目录
-r, --registry <registry> 提供镜像仓库地址
-l, --localdev <localdev> 是否本地开发
-lpp, --laravelprojectpath <laravelprojectpath> 提供laravel项目路径
-lplp, --laravelprojectlogpath <laravelprojectlogpath> 提供项目运行日志路径
-plp, --phplogpath <phplogpath> 提供php日志路径
-nlp, --nginxlogpath <nginxlogpath> 提供nginx日志路径
-wsp, --webserverport <webserverport> 提供webserver的端口
egm-laravel-scaffold-running-prepare
-w, --workDir <workDir> 工作目录 (default: "./output/")
-cit, --cronImgTag <cronImgTag> 定时任务镜像版本
-fit, --fpmImgTag <fpmImgTag> fpm镜像版本
-wit, --workerImgTag <workerImgTag> worker镜像版本
-wsit, --webServerImgTag <webServerImgTag> webserver镜像版本
-wsp, --webServerPort <webServerPort> webserver端口
-cpcf, --customPhpConfigFile <customPhpConfigFile> 是否使用自定义的php配置文件
-envf, --envFile <customPhpConfigFile> 是否使用自定义的env文件