拉取最新的PHP版本,当然你也可以挑选某个PHP版本来。两步即可完成。

 拉取PHP最新版:

 [root@localhost ~]# docker pull php:8.1.3-fpm

 

 

  • 启动PHP:

 [root@localhost ~]# docker run –name myphp8.1 -v /data/web:/data/www -d php:8.1.3-fpm

 [root@localhost ~]# docker ps

 

 

docker run 的参数解析

–name 给容器起一个名字:myphp8.1

-v 挂载目录,:前面是宿主机的目录(/data/web),后面部分(/data/www)是docker镜像里面的目录。这样挂载后,不管是在宿主机还是docker里面修改的,都能互相看到。两个目录不一样,也可以设置一样的。根据自己的喜好和方便管理的原则进行关联挂靠。

-d 守护进程放到后台运行

最后一个参数是镜像名字,带版本号(tag)

 

 

03测试PHP是否成功

 以交互方式进入刚刚启动的PHP容器

 [root@localhost ~]# docker exec -it myphp8.1 /bin/bash

 

默认进入了PHP的web目录,其实我们挂载的目录是/data/www,进入挂载的目录。两个目录都是空的,都没有默认的文件。

 启动PHP自带的server服务器

root@0861345dc050:/var/www/html# php -S localhost:80 -t /data/www

 

 

  • 再开一个窗口(xshell或者putty登陆centos),按第一步,登陆到PHP容器中,通过curl命令访问刚才启动的web服务器,得到了一个404的返回

 [root@localhost ~]# docker exec -it myphp8.1 /bin/bash

 root@8f26a5307523:/var/www/html# curl http://localhost/

 同时web服务器,也捕获到了一个访问记录,并打印到了屏幕上,说明服务器是运行正确了

 

 

  • 运行PHP脚本

 

 

在宿主机创建一个PHP文件,输出我们最熟悉的hello world:

 

 

[root@localhost ~]# vim /data/web/index.php

 <?php

 echo “hello world”;

 //退出保存

 重新发起访问:

 

 

 
版权声明:本文为Alexmarting原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/alexmarting/p/16126259.html