Skip to content

一键部署基于docker的LAMP环境,并利用electron + vue 提供gui管理。+++ 可配置的多进程php扩展安装

License

Notifications You must be signed in to change notification settings

aogg/docker_lnmp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

2088c08 · Jan 23, 2021
May 28, 2019
Aug 25, 2018
Aug 28, 2018
Dec 3, 2017
Jan 23, 2021

Repository files navigation

基于docker的LNMP环境

npm npm npm npm npm npm npm

说明

一个基于docker的LNMP环境,并利用electron + vue 提供gui管理(目前只处理了window环境和mac环境,后续支持linux)


其中gui界面通过electron+webpack+vue+babel实现。

使用

  • npm打开
git clone https://github.com/aogg/docker_lnmp.git
cd electron
npm install --registry=https://registry.npm.taobao.org
npm start
  • 首次点击构建,构建docker容器
    github

  • 再点击启动按钮,启动php环境

  • 其中xdebug需要额外配置127.0.0.1 host_localhost的hosts配置

容器配置

各容器放在docker文件夹内,对应配置也在容器文件夹的conf文件夹
其中php、nginx的conf文件夹实现共享目录,可本地修改并在容器内及时体现出 如:
1、docker/php/conf/conf/php.ini
2、docker/php/conf/etc/php-fpm.conf
3、docker/nginx/conf/nginx.conf

其中sources.list是通过COPY过去,所以如要修改必须重新构建所有容器


多进程安装扩展

  • 1、PHP扩展安装相关目录为docker/php/src/,对应容器内路径为/usr/local/php-ext/。

  • 2、config.json为所有扩展的配置文件
    可配置参数:

{
	"EXT_INSTALL" : "是否安装",
	"EXT_NAME"    : "扩展名称",
	"EXT_URL"     : "扩展下载地址",
	"EXT_TGZ_DIR" : "不下载直接用本地目录",
	"EXT_DEPEND"  : "扩展对应依赖",
	"EXT_ARG"     : "扩展编译时参数",
	"EXT_EVAL"    : "扩展下载完成后执行的代码",
	"EXT_DESC"    : "扩展描述"
},
  • 3、install.json为本次构建(build)时需要安装的扩展
  • 4、php-ext.sh为安装PHP扩展的核心多线程shell脚本。平时在容器内可通过下面方式直接安装指定的多个扩展
bash /usr/local/php-ext.sh memcached-2.2.0 xdebug-2.4.0
  • 5、最大并发安装PHP扩展的数量,默认值为15。

打包

放在electron/app/dist目录下

npm run pack

各截图

主界面截图
主界面截图

mini安装多个扩展时间
github