Laravel 的 Docker 开发环境-基于centos系统
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,1 规划软件:PHP 7.2、Nginx、MySQL、Composer、NPM AND Yarn 等等;易于扩展使用,如随时可以切换 PHP 版本,或者 Apache 和 Nginx 切换使用。规划
千家信息网最后更新 2026年11月01日Laravel 的 Docker 开发环境-基于centos系统
1 规划
软件:PHP 7.2、Nginx、MySQL、Composer、NPM AND Yarn 等等;易于扩展使用,如随时可以切换 PHP 版本,或者 Apache 和 Nginx 切换使用。规划: 先在centos镜像安装php-fpm和laravel的需要依赖包,使用supervisord监控php-fpm的启动,然后通过挂载项目的目录到容器之内 执行脚本构建项目。实现项目发布和更新迭代。此处我仅仅处理了lavravel的php和依赖环境,并没有处理nginx和mysql的环境,后期会出关于其他依赖的环境的操作。
2 部署需要的安装包
php-fpm 7.2
我这里懒省事直接在容器里面安装处理了(开启模块: opcache imagick fileinfo redis swoole ) wget -c http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --php_option 7 --phpcache_option 1 --php_extensions zendguardloader,ioncube,imagick,fileinfo,redis,swoolenode
我这里选择 node-v10.10.0-linux-x64.tar.gz wget https://nodejs.org/download/release/v10.10.0/node-v10.10.0-linux-x64.tar.gztar xf node-v10.10.0-linux-x64.tar.gz mv node-v10.10.0 /usr/local/nodeyarn
wget install -y https://github.com/yarnpkg/yarn/releases/download/v1.13.0/yarn-1.13.0-1.noarch.rpmyum install -y yarn-1.13.0-1.noarch.rpm安装 nodejs 8
curl -sL https://rpm.nodesource.com/setup_8.x | bash -安装compose
cd /usr/local/bincurl -s https://getcomposer.org/installer | phpchmod a+x composer.phar composer.phar self-update mv composer.phar composer supervisor安装
yum install -y epel-release yum install -y supervisor配置环境启动脚本和supervisor启动配置
[root@58b32f9d29d0 /]# cat /root/startphp-fpm.sh #!/bin/bash supervisord -n -c /etc/supervisord.conf [root@58b32f9d29d0 /]# cat /etc/supervisord.conf |grep -vE "^;|^$" [unix_http_server] file=/var/run/supervisor/supervisor.sock ; (the path to the socket file) [supervisord] logfile=/var/log/supervisor/supervisord.log ; (main log file;default $CWD/supervisord.log) logfile_maxbytes=50MB ; (max main logfile bytes b4 rotation;default 50MB) logfile_backups=10 ; (num of main logfile rotation backups;default 10) loglevel=info ; (log level;default info; others: debug,warn,trace) pidfile=/var/run/supervisord.pid ; (supervisord pidfile;default supervisord.pid) nodaemon=false ; (start in foreground if true;default false) minfds=1024 ; (min. avail startup file descriptors;default 1024) minprocs=200 ; (min. avail process descriptors;default 200) [rpcinterface:supervisor] supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface [supervisorctl] serverurl=unix:///var/run/supervisor/supervisor.sock ; use a unix:// URL for a unix socket [program:php-fpm] process_name=%(program_name)s_%(process_num)02d command=/usr/local/php/sbin/php-fpm --fpm-config /usr/local/php/etc/php-fpm.conf #stdout_logfile=/data/wwwlogs/php-fpm-sup.log autostart=true autorestart=true startretries=5 exitcodes=0,2,70 stopsignal=QUIT stopwaitsecs=2 [include] files = supervisord.d/*.ini处理完毕 删除安装包和清理yum缓存 打包为镜像
rm -fr oneinstack-full.tar.gz oneinstack yarn-1.13.0-1.noarch.rpm node-v10.10.0-linux-x64.tar.gz yum cleal all打包为镜像laravel 环境
docker commit -a "laravel 环境初始化" 58b32f9d29d0 hanye131/fangxinerp:supvisor_php-fpm72启动镜像
docker run -itd --name=test1 -v /data/startphp-fpm.sh:/root/startphp-fpm.sh -v /data/supervisord.conf:/etc/supervisord.conf hanye131/fangxinerp:supvisor_php-fpm72模拟项目启动
docker run -itd --name=test1 -v /data/startphp-fpm.sh:/root/startphp-fpm.sh -v /data/supervisord.conf:/etc/supervisord.conf -v /var/www/html:/var/www/html -v /root/laravel-install.sh:/root/laravel-install.sh: hanye131/fangxinerp:supvisor_php-fpm72/root/laravel-install.sh
#!/bin/bash export PATH=/usr/local/php/bin:/usr/local/php/sbin:/usr/local/node/bin:$PATH cd /var/www/html composer install yarn install php artisan migrate --force php artisan queue:restart npm run devDockerfile
FROM centos:latestMAINTAINER hz7726@163.comENV PATH /usr/local/php/bin:/usr/local/php/sbin:/usr/local/node/bin:$PATHRUN yum install -y wget \ && mkdir -p /data/docker \ && cd /data/docker \ && wget -c http://mirrors.linuxeye.com/oneinstack-full.tar.gz && tar xzf oneinstack-full.tar.gz && ./oneinstack/install.sh --php_option 7 --phpcache_option 1 --php_extensions zendguardloader,imagick,fileinfo,redis,swoole \ && wget https://nodejs.org/download/release/v10.10.0/node-v10.10.0-linux-x64.tar.gz \ && tar xf node-v10.10.0-linux-x64.tar.gz \ && mv node-v10.10.0-linux-x64 /usr/local/node \ && curl -sL https://rpm.nodesource.com/setup_8.x | bash - \ && wget https://github.com/yarnpkg/yarn/releases/download/v1.13.0/yarn-1.13.0-1.noarch.rpm \ && yum install -y yarn-1.13.0-1.noarch.rpm COPY php_etc.tar.gz /usr/local/php/etc/RUN cd /usr/local/php/etc/ \ && tar xf php_etc.tar.gz#COPY /data/php-fpm /etc/init.d/php-fpm#COPY /data/composer /usr/local/bin/composer#RUN chmod +x /etc/init.d/php-fpm \#&& chkconfig --add php-fpm \&& sed -i 's@disable_functions@;disable_functions@' /usr/local/php/etc/php.ini\&& rm -fr /data/docker && yum cleal allCMD ['/usr/local/php/sbin/php-fpm','--fpm-config','/usr/local/php/etc/php-fpm.conf']https://gitee.com/hanyehell/DockerInstall/tree/master/docker-Laravel-php-fpm
环境
镜像
项目
处理
容器
脚本
切换
规划
配置
省事
模块
版本
目录
缓存
软件
项目发布
更新
监控
迭代
选择
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
新华互联网科技
中关村互联网 科技集团
科技平台互联网
互联网 的科技创新
极限挑战互联网科技
云电互联网科技
伴你行互联网科技有限公司
人人互联网科技是培训
科技大学互联网专业好不好
科技与互联网的利与弊
互联网科技有哪些公司
国大互联网教育科技有限公司工作
内蒙古九一互联网科技
互联网公司黑科技创始人
工业互联网等科技实现智能化赋能
本届互联网大会上的黑科技
互联网时代科技型公司的机会
唯美互联网科技
众联互联网络科技
陕西彩京云互联网科技有限公司
百单网互联网科技有限公司怎么样
没上市的科技互联网公司
郑州华宇互联网科技
青海省互联网新科技
南山科技园互联网公司有哪些
语蝶互联网科技有限公司
高科技互联网发展前景如何
群盈汇互联网科技有限公司
好易买互联网科技
现代互联网科技公司