赞
踩
前言:继上一篇windows本地使用docker+nginx+mysql部署thinkphp5后,本期使用docker-compose搭建环境访问thinkphp5程序。
如您不了解docker-compose语法也没关系,为了避免废话。直接贴docker-compose.yml内容
- #docker-compose 版本
- version: '3'
-
- #创建服务,可理解为创建容器。
- services:
- #拉取nginx镜像
- nginx:
- #镜像版本
- image: nginx:latest
- #暴露的端口
- ports:
- - "8001:80"
- #挂载宿主机文件(宿主机文件:容器内文件)
- volumes:
- - ./default.conf:/etc/nginx/conf.d/default.conf
- - ./html:/var/www/html
- #使用depends_on 指定服务之间的依赖关系
- depends_on:
- - php
- #服务所依赖网络
- networks:
- - app-network
- #拉取php-fpm镜像
- php:
- image: php:7.4-fpm
- volumes:
- - ./html:/var/www/html
- networks:
- - app-network
- #定义网络
- networks:
- #网络名称
- app-network:
- #网络驱动类型
- driver: bridge
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
- server {
- listen 80;
- index index.php;
- server_name localhost;
- error_log /var/log/nginx/error.log;
- access_log /var/log/nginx/access.log;
- root /var/www/html/app/public;#指向容器内部thinkphp程序的public目录
-
- # location / {
- # try_files $uri $uri/ /index.php?$query_string;
- # }
- #隐藏入口文件index.php
- location / {
- if (!-e $request_filename){
- rewrite ^(.*)$ /index.php?s=$1 last; break;
- }
- }
-
- location ~ \.php$ {
- fastcgi_pass php:9000;#容器名php,在Docker容器中,如果你使用PHP-FPM镜像,默认情况下PHP-FPM会监听9000端口
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- fastcgi_param PATH_INFO $fastcgi_path_info;
- include fastcgi_params;
- }
- }
![](https://csdnimg.cn/release/blogv2/dist/pc/img/newCodeMoreWhite.png)
在docker-compose.yml文件所在目录启动cmd终端输入docker-compose up;
启动成功结果如下:-d表示后台运行,不输出任何结果到终端。
查看Docker Desktop,结果如下就成功搭建了。
访问localhost:8001查看效果:
是不是很熟悉 ,哈哈哈!
使用docker-compose配置很好玩,上述都配置好了之后,就可以愉快的使用thinkphp5写业务了。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。