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

Linux 系统 docker快速搭建PHP环境

                                                        PHP安装
#############################################################################

1、直接拉取官方镜像
查找Docker Hub上的php镜像  

docker search php


直接拉取官方镜像

docker run --name myphp  --restart=always --network lnmp -d php:7.1-fpm 


2、创建php容器

mkdir /opt/php

#拷贝配置文件(这个地方容易出错,可以直接把实施工程文件里现成的配置文件直接拷贝过去,不用执行下面的语句了)

docker cp 0850901bc597:/etc/php/7.1/fpm/php.ini /opt/php/php.ini
#停止、删除容器
docker stop php
docker rm b2009f54cf34
#正式部署
docker run -p 9000:9000 --name php -v //opt/nginx/html:/var/www/html -v //opt/php/php.ini:/etc/php/7.4/fpm/php.ini -d  --restart=always php:7.1-fpm 

第一个-v 网址Nginx网站目录映射到PHP目录
第二个-v 映射配置文件php容器和宿主机共享目录

3、修改nginx配置(此处配置文件在本机,/opt/nginx/conf目录下)

user  root;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;
#pid        logs/nginx.pid;events {worker_connections  1024;
}http {include       mime.types;default_type  application/octet-stream;sendfile        on;#tcp_nopush     on;#keepalive_timeout  0;keepalive_timeout  65;server {listen       80;server_name  localhost;location / {#这是nginx容器中的默认配置路径,已经映射到虚拟机/www下了 不需要改动root   /usr/share/nginx/html/;#这里添加index.php入口文件index index.php index.html index.htm;}error_page   500 502 503 504  /50x.html;location = /50x.html {root   /usr/share/nginx/html;}#配置phplocation ~ \.php$ {#这里要换成php容器的ip!fastcgi_pass   192.168.0.118:9000; fastcgi_index  index.php;#这一段一定要注意!把php容器中默认的/var/www/html写进去,替换掉之前的$documentfastcgi_param SCRIPT_FILENAME /var/www/html$fastcgi_script_name;#fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;include        fastcgi_params;}
}


 ##############################轮询负载均衡##################################
 

 # upstream order {#ip_hash;#server 192.168.0.118:8011 weight=1;  #weight权重#server 192.168.0.118:8088 weight=1;#}# server{# listen 80;# server_name 192.168.0.118;# location / {#    index  index.html  index.htm;#     proxy_pass http://order/;
# }
# }


####################################标准配置################################

#   server {
#      listen   80;
#     server_name  somename  alias  another.alias;
# 
#       location / {
#            root   /usr/share/nginx/html/;
#            index  index.html index.htm;
#       }
#    }}


#保存退出,然后重启nginx

docker restart nginx


#去Nginx目录下/opt/nginx/html目录中新建index.php(此目录是共享目录,已经挂载给Nginx和PHP,所以项目可以直接放在这个目录下即可)
#写入php代码,然后本地访问虚拟机ip即可看到配置成功


php扩展安装

首先进入容器
docker  ps

docker  exec  -it   容器ID或名称  /bin/bash

cd /usr/src   里边会有两个压缩文件

安装链接MySQL数据库的驱动

docker-php-ext-install pdo pdo_mysqldocker-php-ext-install mysqli

http://www.lryc.cn/news/326129.html

相关文章:

  • 逻辑设计问题 -- 设计一个函数
  • RHCE 补充:判断服务状态
  • 计算机网络:物理层 - 编码与调制
  • 《量子计算:揭开未来科技新篇章》
  • 机器人机械手加装SycoTec 4060 ER-S电主轴高精密铣削加工
  • docker 共享内存不足问题
  • 英语口语 3.27
  • pytest之统一接口请求封装
  • 使用npm仓库的优先级以及.npmrc配置文件的使用
  • Netty源码剖析——ChannelHandlerContext 篇(三十七)
  • 5.92 BCC工具之bitesize.py解读
  • jupyter notebook导出含中文的pdf(LaTex安装和Pandoc、MiKTex安装)
  • 压力测试(QPS)及测试工具Locust
  • canal: 连接kafka (docker)
  • 45 对接海康视频九宫格的实现
  • 二-容量管理之容量水位
  • 计算机网络——数据链路层(差错控制)
  • 【搜索引擎1】Ubuntu通过deb方式安装ElasticSearch和Kibana、ik中文分词插件
  • 1.0 html(1)
  • 基于SpringBoot和Leaflet的行政区划地图掩膜效果实战
  • 【机器学习之---数学】马尔科夫链
  • 教程3_图像的轮廓
  • 【Linux】-Linux下的编辑器Vim的模式命令大全及其自主配置方法
  • 基于SpringBoot和Vue的车辆管理系统的设计与实现
  • R折线图(自备)
  • web学习笔记(四十五)Node.js
  • 基于Gabor滤波器的指纹图像识别,Matlab实现
  • 55、Qt/事件机制相关学习20240326
  • Clip Converter - 视频在线下载方法
  • 【No.19】蓝桥杯简单数论上|模运算|快速幂|GCD|LCM|刷题统计|RSA解密|核桃的数量(C++)