毕业后转行从事php开发,工作了6.7年,一直没有提升,即将遇到35岁危机,前途一片渺茫,但还是要加油啊,跑题了
本文参照https://www.runoob.com/docker/docker-install-php.html
1、拉取php 根据自己需要安装版本 我直接拉最新的有问题 指定tag标签就没问题了
docker pull php: 7.1.9-fpm
2.拉取nginx nginx我拉取最新的
docker pull nginx
3.创建php容器 我看教程要指定映射 即 将主机中项目的目录 E:\projects挂载到容器的 /www 我起初不明白为什么要指定,后来也没太弄清楚.
docker run --name php -v E:\projects:/www -d php:7.19-fpm
4.创建nginx容器 挂载配置和项目目录
docker run --name nginx -p 80:80 -d -v E:\projects:/usr/share/nginx/html:ro -v E:\nginx\conf\conf.d:/etc/nginx/conf.d:ro nginx
tips:其实-v 之后 进如容器内的目录 看到的就是主机目录里的文件
5. 现在容器通信好像都不用link了 都是用network 创建一个网络 把容器加进去 容器直接就能通过容器名称通信了
docker network create lnmp 随意命名 创建命名为lnmp的网络
docker network connect lnmp php php容器加入网络
docker network connect lnmp nginx
6. 创建配置文件 在上面E:\nginx\conf\conf.d主机目录里
重点来了 标红php 好理解就是 容器php nginx要把php文件转发给php-cgi程序处理
下面标红www 这就是之前创建php容器时候挂载的容器目录 其实指的是主机项目目录E:\prohects 因为nginx项目目录已经指到主机项目目录 我直接写nginx容器项目目录 不行找不到 我直接写项目主机目录 不行找不到 还只有写php容器里的项目目录才行 因为php容器项目目录也指向主机项目目录 这个我也没弄明白
7.之后访问就行了.如果配置域名访问 要在主机host文件做下映射。之前phpstudy是直接生成映射,docker要手动填写