当前位置: 首页 > news >正文

docker 搭建php 开发环境 添加扩展redis、swoole、xdebug(1)

docker-compose搭建lnmp
先决条件
首先需要安装docker

安装docker-compost

1、创建lnmp工作目录

#创建三个目录
mkdir lnmp && cd lnmp
mkdir -p nginx/conf php mysql/data lnmp/www#编写nginx 配置文件  nginx/conf/default.conf
vim nginx/conf/default.confserver {listen       80;root   /usr/share/nginx/html;index   index.html index.htm index.php;# redirect server error pages to the static page /50x.html#error_page   500 502 503 504  /50x.html;location = /50x.html {root   /usr/share/nginx/html;}location / {index  index.html index.htm index.php ;try_files $uri $uri/ /index.php?$query_string;autoindex  on;}location ~ \.php$ {#php73是容器命名fastcgi_pass   php:9000;fastcgi_index  index.php;include        fastcgi_params;fastcgi_param  PATH_INFO $fastcgi_path_info;fastcgi_param  SCRIPT_FILENAME  /var/www/html/$fastcgi_script_name;}}

2、编写php镜像文件Dockerfile

因为php需要安装一些扩展文件 使用dockerfile进行镜像构建

vim php/Dockerfile# 基础
FROM php:7.2-fpm# 修改时区
ENV TZ Asia/Shanghai
RUN date -R# 换源
RUN echo 'deb http://mirrors.ustc.edu.cn/debian stable main contrib non-free' >/etc/apt/sources.list
RUN echo 'deb http://mirrors.ustc.edu.cn/debian stable-updates main contrib non-free' >>/etc/apt/sources.list
RUN apt-get update --fix-missing && apt-get install -y libpng-dev libjpeg-dev libfreetype6-dev  \&& docker-php-ext-configure gd --with-freetype-dir=/usr/include --with-jpeg-dir=/usr/include/jpeg \&& docker-php-ext-install gd mysqli opcache pdo_mysql gd zipENV PHPREDIS_VERSION 5.0.1
ENV PHPXDEBUG_VERSION 2.6.0
ENV PHPSWOOLE_VERSION 4.5.10RUN pecl install redis-$PHPREDIS_VERSION \&& pecl install xdebug-$PHPXDEBUG_VERSION \&& pecl install swoole-$PHPSWOOLE_VERSION \&& docker-php-ext-enable redis xdebug swooleRUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \&& php composer-setup.php \&& php -r "unlink('composer-setup.php');" \&& mv composer.phar /usr/local/bin/composer \&& composer config -g repo.packagist composer https://packagist.phpcomposer.com
RUN apt-get install -y gitRUN rm -rf /var/cache/apt/* \&& rm -rf /var/lib/apt/lists/*
RUN mkdir /var/lib/sessions \&& chmod o=rwx -R /var/lib/sessions
#容器启动时执行指令
CMD ["php-fpm"]

相关文章:

  • 如何用Spring Cache实现对Redis的抽象
  • Oracle 正则表达式匹配(Oracle 11g)
  • 威联通QNAP替换docker源
  • 高频面试--redis
  • Python打卡 DAY 38
  • Docker 挂载卷并保存为容器
  • LeetCode 2894.分类求和并作差:数学O(1)一行解决
  • 大语言模型 21 - MCP 自动操作 Figma+Cursor 实现自动原型开发!
  • 利用 MkDocs 和 GitHub 部署个人博客网页
  • 基于 SpringBoot 与 VueJS 的智慧就业服务平台构建:技术融合与实践创新
  • AI赋能引爆短剧全球化风潮,腾讯云媒体处理助力短剧平台出海吸金
  • proteus8.4 安装包下载地址与安装教程
  • Web通信协议全景解析:从HTTP到WebService的技术演进与对比
  • NGINX HTTP/2 全面指南开启、调优与实战
  • Windows版本的postgres安装插件http
  • 恶意npm与VS Code包窃取数据及加密货币资产
  • FastMoss 国际电商Tiktok数据分析 JS 逆向 | MD5加密
  • Pytorch
  • [25-cv-05718]BSF律所代理潮流品牌KAWS公仔(商标+版权)
  • Springboot引入Spring Cloud for AWS的配置中心(Parameter Store和Secrets)
  • 电商网站建设模型图/网络站点推广的方法
  • 自己做视频网站资源从哪里来/最近一周新闻大事
  • 网站做商城/公司网站建设公司好
  • 个人购物网站需要备案吗/投广告哪个平台好
  • 常规网站建设价格实惠/搜狗指数
  • 中国兼职设计师网/惠州seo怎么做