CentOS7环境下使用Docker搭建PHP运行环境的过程详解

 更新时间:2021年08月03日 10:35:46   作者:李维山  
这篇文章主要介绍了CentOS7环境下使用Docker搭建PHP运行环境,文中给大家提到创建私有网络及安装nginx的方法,本文给大家介绍的非常详细,需要的朋友可以参考下

相关文章:

CentOS7下使用yum安装Docker

Win10环境下使用Docker搭建PHP运行环境

1、创建私有网络

docker network create lnmp

       私有网络创建成功: 

2、安装Nginx

      镜像地址:https://hub.docker.com/_/nginx?tab=tags

       可以安装最新版Nginx,这里通过搜索标签,拉取 Nginx1.18.0 镜像:

docker pull nginx:1.18.0

      使用 docker images 命令查看 安装Nginx镜像成功: 

      运行Nginx:

#运行容器
docker run --name nginx -p 8080:80 -v /root/docker/nginx/html:/usr/share/nginx/html -d nginx:1.18.0
 
#移动到配置目录
cd /root/docker/nginx
 
#复制配置文件
docker cp nginx:/etc/nginx/conf.d conf.d
 
#停止容器
docker stop nginx
 
#删除容器 
docker rm nginx 
 
#再次运行
docker run --name nginx -p 8080:80 --network lnmp -v /root/docker/nginx/html:/usr/share/nginx/html -v  /root/docker/nginx/conf.d:/etc/nginx/conf.d/ -d nginx:1.18.0

      测试:在Nginx站点根目录html目录下创建index.html文件,并写入文字:

echo "Nginx Server" >> /root/docker/nginx/html/index.html

      浏览器访问主机地址 127.0.0.1:8080 如下,则Nginx安装成功:

3、安装MySQL

      镜像地址:https://hub.docker.com/_/mysql?tab=tags ,这里拉取MySQL5.7.34镜像:

docker pull mysql:5.7.35

      运行MySQL:

docker run --name mysql5.7 --network lnmp -v /root/docker/mysql/:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=123456 -d --privileged=true mysql:5.7.35

4、安装PHP

      镜像地址:https://hub.docker.com/_/php?tab=tags,这里拉取PHP7.4镜像:

docker pull php:7.4-fpm

      运行PHP:

#运行镜像
docker run --name php7.4 --network lnmp -d php:7.4-fpm
 
#创建目录
mkdir -p /root/docker/php
 
#移动目录
cd /root/docker/php/
 
#复制www.conf
docker cp php7.4:/usr/local/etc/php-fpm.d/www.conf www.conf
 
#进入容器
docker exec -it php7.4 bash
 
#移动目录
cd /usr/src/
 
#解压文件
xz -d php.tar.xz
 
#解压文件
tar -xvf  php.tar
 
#退出镜像
exit
 
#复制php.ini
docker cp php7.4:/usr/src/php-7.4.22/php.ini-production php.ini
 
#停止镜像
docker stop php7.4
 
#删除镜像
docker rm php7.4
 
#再次运行镜像
docker run --name php7.4 --network lnmp -v /root/docker/nginx/html:/var/www/html -v /root/docker/php/www.conf:/usr/local/etc/php-fpm.d/www.conf -v /root/docker/php/php.ini:/usr/local/etc/php/php.ini -d php:7.4-fpm

      编辑Nginx配置文件 vim /root/docker/nginx/conf.d:

server {
    listen       80;
    server_name  localhost;
    
    #charset koi8-r;
    #access_log  /var/log/nginx/log/host.access.log  main;
 
    location / {
        root /usr/share/nginx/html;
        index index.php index.html index.htm;
        try_files $uri $uri/ =404;
    }
 
    error_page  404  /404.html;
    location = /40x.html {
        root  /user/share/nginx/html;
    }
 
    # 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;
    }
 
    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    location ~ \.php$ {
        root           /var/www/html/;
        fastcgi_pass   php7.4:9000;
        fastcgi_index  index.php;
#        fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
        include        fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
 
    }
}

      创建index.php文件:vim /root/docker/nginx/html/index.php

<?php
    phpinfo();

      重启Nginx镜像:(进程ID通过 docker ps 命令查看)

docker restart 43aea5a90446

      此时浏览器访问主机地址 127.0.0.1:8080 如下,则PHP安装成功:

到此这篇关于CentOS7环境下使用Docker搭建PHP运行环境的文章就介绍到这了,更多相关Docker搭建PHP运行环境内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • kali安装docker及搭建漏洞环境的详细教程

    kali安装docker及搭建漏洞环境的详细教程

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,本文重点给大家介绍kali安装docker及搭建漏洞环境的过程,感兴趣的朋友一起看看吧
    2022-05-05
  • Windows10 Docker Desktop安装过程

    Windows10 Docker Desktop安装过程

    Docker Desktop是Docker公司推出的一款桌面应用程序,它提供了一个用户友好的界面,方便开发人员在本地环境中使用容器技术,这篇文章主要介绍了Windows10 Docker Desktop安装过程,需要的朋友可以参考下
    2024-01-01
  • Docker部署SonarQube的详细流程

    Docker部署SonarQube的详细流程

    SonarQube是一款开源代码检测工具,运作流程是这样的,先通过 sonar-scanner 插件扫描代码,把数据存储到数据库,sonarQube 读取数据库,将数据库展现在 web 平台,本篇介绍通过 docker 来安装,感兴趣的朋友一起看看吧
    2022-02-02
  • docker可视化管理工具portainer忘记密码重置教程的实现

    docker可视化管理工具portainer忘记密码重置教程的实现

    本文主要介绍了docker可视化管理工具portainer忘记密码重置教程的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-08-08
  • Docker构建Maven+Tomcat基础镜像的实现

    Docker构建Maven+Tomcat基础镜像的实现

    这篇文章主要介绍了Docker构建Maven+Tomcat基础镜像的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • docker容器安装及部署的超详细入门教程

    docker容器安装及部署的超详细入门教程

    Docker可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化,下面这篇文章主要给大家介绍了关于docker安装及部署的相关资料,需要的朋友可以参考下
    2022-08-08
  • Docker创建nacos容器的方法

    Docker创建nacos容器的方法

    这篇文章主要介绍了Docker创建nacos容器的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-03-03
  • Windows安装Docker全过程

    Windows安装Docker全过程

    这篇文章主要介绍了Windows安装Docker全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • 详解Docker-compose networks 的例子

    详解Docker-compose networks 的例子

    这篇文章主要介绍了详解Docker-compose networks 的例子,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Docker每次启动容器,IP及hosts指定的操作

    Docker每次启动容器,IP及hosts指定的操作

    这篇文章主要介绍了Docker每次启动容器,IP及hosts指定的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03

最新评论