来自百度百科:
PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入HTML中
参考知乎文章:https://zhuanlan.zhihu.com/p/356397851、https://zhuanlan.zhihu.com/p/356396288
可以在Win10家庭中文版安装Hyper-V,看上面文章✌️
何为docker,截图来自知乎:
通过此文:https://zhuanlan.zhihu.com/p/23599229了解docker基础知识
还有此文:https://zhuanlan.zhihu.com/p/187505981
and this:Docker容器和镜像的区别
具体步骤当时忘记记录了…不过大体上和这篇博客还有这篇上的原生linux安装docker方式差不多
噢噢想起来了,还看了这个:https://www.bilibili.com/video/BV1nt4y1k7Fy?from=search&seid=7494207446618727184
开启docker,一开始网上查的是systemctl start docker
查询原因 :博客链接
下面两张图均来自上方那个链接
sudo service docker start
service docker stop
service docker status
sudo apt update
sudo apt install php
sudo apt install libapache2-mod-php
Apache是啥:
nginx
参考教程:B站 Windows10开发环境搭建(3)在WSL2里安装Docker
(大概从六分半开始讲nginx
)
我拉了两个
一个是参考这个教程拉的php:7.2.0-cli-alpine3.6
另一个是:
docker pull php:7.4-cli-alpine
参考:
docker的基本命令
Linux命令行选项单横线“-”与双横线“–”的区别
docker run -it --name php-7.4-cli -p 80:80 php:7.4-cli-alpine sh
docker run
关于docker run it 的 it
docker run命令参数及使用(含例子)
根据这些参数的解释,那么上面那个docker run命令的意思大概就是:
使用镜像php:7.4-cli-alpine 以交互模式启动一个容器,将容器的80端口映射到主机的80端口,并将容器命名为php-7.4-cli
至于上面的sh,是指linux的sh命令吗?我还没确定,不过我瞎查了一通…感觉和bash差不多
简书文章:/bin/bash和/bin/sh的区别
参考文章:创建新Docker容器时出现“The container name “/xxx” is already in use by container xxxxxxxxxxx…”问题的解决办法
如果在容器没有移除之前,使用两次这种命令:
docker run -it --name php-7.4-cli -p 80:80 php:7.4-cli-alpine sh
,就会抛出already in use 的错误
docker images
移除容器之前要先停止正在运行的容器,参考:You cannot remove a running container
docker stop 容器的ID
docker rm 所要移除容器的ID(CONTAINER ID)
此时再次使用docker ps -a就能看到对应的容器已经被移除
啊突然发现之前好多次没反应是因为…没加分号
先退出刚刚的php交互环境
然后按照这个步骤来:
链接:Linux cd命令cd、 cd ~、cd /、cd…/、cd /home讲解
Linux vi命令(vi编辑器)30分钟入门教程
php -S 0.0.0.0:80
在浏览器中访问虚拟机IP
输入localhost
或者127.0.0.1
或者127.0.0.1:80
会有记录:
vi index.php
php -S 0.0.0.0:80
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kJpjbSA2-1630650398145)(https://cdn.jsdelivr.net/gh/xin007-kong/picture_new/img/20210903114838.png)]
参考:Windows访问WSL里的Apache服务
docker pull php:7.4-apache
mkdir html #在虚拟机里新建一个html文件夹
cd html
docker run -d --name php-7.4-apache -p 8000:80 -v "$PWD":/var/www/html php:7.4-apache
在没有创建index.php之前就去访问,会出现这个:
我查了好多资料说去修改apache的配置文件,但我在WSL2上一直找不到网上那些在Linux系统里说的路径,差点以为没救了…
然后创建了个php文件…发现可以访问!
localhost:8000