美文网首页
windows下docker安装PHP

windows下docker安装PHP

作者: 史史小子 | 来源:发表于2021-06-15 23:15 被阅读0次

1.查看仓库可用php版本

docker search php

2.我这里安装php7.4

docker pull php:7.4-fpm

3.查看镜像是否安装成功

docker images

4.运行容器

docker run --name  php7.4-fpm-test -v D:\DockerContainer\nginx\www:/www  -d php:7.4-fpm

参数说明:
--name php7.4-fpm-test : 将容器命名为 php7.4-fpm-test。
-v D:\DockerContainer\nginx\www:/www : 将主机中项目的目录 www 挂载到容器的 /www
-d php:7.4-fpm: 设置容器在在后台一直运行。

5.进入容器

docker exec -it php7.4-fpm-test /bin/bash

进入容器后发现容器根目录www下已经有index.php文件,这是我们上篇文章配置nginx创建的,出现这说明映射成功
6.在D:\DockerContainer\nginx\conf.d目录下创建test.conf文件,内容如下

server {
    listen       80;
    server_name  localhost;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm index.php;
    }

    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    location ~ \.php$ {
        fastcgi_pass   php:9000;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME  /www/$fastcgi_script_name;
        include        fastcgi_params;
    }
}

7.在D:\DockerContainer\nginx\www目录下创建index.php文件

<?php
echo phpinfo();
?>

8.运行nginx容器

docker run --name nginx-test -p 8080:80 -v D:\DockerContainer\nginx\conf:/etc/nginx/conf -v D:\DockerContainer\nginx\conf.d:/etc/nginx/conf.d -v D:\DockerContainer\nginx\logs:/var/log/nginx -v D:\DockerContainer\nginx\www:/usr/share/nginx/html -d --link php7.4-fpm-test:php nginx

9.浏览器访问index.php



10.安装mysqli扩展
进入容器安装php mysqli扩展,进入到/usr/local/bin目录执行命令

docker-php-ext-install mysql
docker-php-ext-install mysqli

安装成功后重启php容器
11.php连接mysql
在index.php文件写连接代码

<?php
$servername = "mysql-test2";
$username = "root";
$password = "root";
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "连接成功";
?>

mysql-test2是之前创建的mysql容器,$servername填写容器名称或者容器ip

12.访问浏览器输出连接成功


相关文章

网友评论

      本文标题:windows下docker安装PHP

      本文链接:https://www.haomeiwen.com/subject/aeypsltx.html