jlucki / docker-php-dev-env

使用 Docker、NGINX、PHP、MySQL 和 Xdebug 简单构建的 Web 开发环境。

安装: 128

依赖: 0

建议者: 0

安全性: 0

星标: 21

关注者: 1

分支: 10

开放问题: 0

语言:Dockerfile

类型:项目

v1.5 2023-12-13 08:24 UTC

This package is auto-updated.

Last update: 2024-09-13 10:34:27 UTC


README

此存储库允许您使用 Docker 快速搭建开发环境,包括 MySQL 数据库和一些调试工具。

此环境包括以下软件的最新版本

  • nginx:alpine
  • php:8.3-fpm
  • mysql:latest
  • xdebug

先决条件

项目设置

在项目目录中运行 composer create-project jlucki/docker-php-dev-env "project_name"

或者,从本仓库下载文件并将它们复制到您的项目目录。

运行容器

  1. 在项目目录中运行 docker compose up
    • 注意:上述命令仅在新版本(大于 3.6)上有效。如果您使用 Docker 3.6 或更旧版本,请使用 docker-compose up
  2. 在浏览器中访问 localhost

在您的 IDE 中设置 Xdebug

以下说明适用于 PHPStorm。

  1. 点击 Run > Edit Configurations
  2. 点击 + 并添加一个新的 PHP 远程调试配置
  3. 为此配置命名
  4. 勾选 根据 IDE 键筛选调试连接
  5. 在会话 ID 中添加 PHPSTORM
  6. 点击 Server 旁边的 ...
  7. 点击 + 以添加新的服务器
  8. 给服务器命名,并将主机设置为 localhost
  9. 勾选 使用路径映射
  10. Project files 文件/目录下,在您的项目文件夹旁边,对于 Absolute path on the server 列表添加 /var/www/html
  11. 点击 Apply 和 OK,直到返回到 IDE
  12. 点击 启动监听 PHP 调试连接 图标
  13. 在您的代码中设置断点
  14. 在浏览器中刷新页面
  15. 接受 来自 Xdebug 的传入连接
  16. 快乐调试!

有关如何启用 xdebug 会话的说明,请参阅 https://xdebug.org/docs/remote

其他说明

对于数据库连接,使用 mysql 作为主机名。如果您想使用不同的主机名,请修改 docker-compose.yml 文件中的服务名称。

Windows 10 故障排除

如果您遇到问题且无法解决问题,请尝试以下一种或两种修复方法

解决方案 1

尝试切换到 Windows 容器

在系统托盘中的 Docker 图标上右键单击,然后点击 切换到 Windows 容器,如下所示

Context Menu

解决方案 2

如果勾选了 使用基于 WSL 2 的引擎 设置

取消勾选设置,然后启用位于 资源 部分,然后是 文件共享 部分的文件共享

Docker Settings

如果没有勾选 使用基于 WSL 2 的引擎 设置:启用/勾选设置(文件共享将自动配置)