abuzikhin / symfony-mysql-docker-skeleton
一个用于在Docker容器内方便开发的Symfony应用程序的项目模板。
dev-main
2024-08-25 12:08 UTC
This package is not auto-updated.
Last update: 2024-09-23 10:41:04 UTC
README
以下配置的项目模板
- 最新的稳定版Symfony框架(目前为6.4),可以指定版本
- PHP 8.3
- MySQL 8+(可以在docker compose文件中修改)?
- 独立的Docker容器用于Nginx、FPM、CLI和数据库
- 内置CS-Fixer和Psalm
概念
- 应用程序和docker文件位于同一级别:分别在
/app
和/docker
文件夹中。这允许您分离symphony应用程序和docker环境变量,并在必要时通过添加新文件夹来实现单仓库模式:/centrifugo
、s3-storage
等。 - 默认情况下忽略
docker-compose.override.yaml
,因此您可以在不担心覆盖原始设置的情况下添加自己的设置。
快速开始
创建新项目的单行命令:composer create-project abuzikhin/symfony-mysql-docker-skeleton local_project_path && make setup-configs && make init OPTIONS="webapp" && make up
分解为步骤
composer create-project abuzikhin/symfony-mysql-docker-skeleton local_project_path
make setup-configs
- 创建docker容器的.env文件make init OPTIONS="webapp"
- 非常重要!在向您的仓库提交任何内容之前运行它。如果您不需要使用webapp,可以省略OPTIONS
参数。make up
- 启动docker容器
每个创建的项目默认端口都是随机的(47001-47999),因此请点击CLI中make up
命令输出的链接并享受吧!
您也可以在生成的/.env文件中手动设置Nginx和MySQL的期望端口(之后别忘了运行make restart
)。
标志
运行make init时,您可以使用以下标志
OPTIONS="webapp"
:包括Web应用程序功能。省略以进行基本的symfony/skeleton
设置。VERSION=X.Y
:指定Symfony版本。默认为最新的稳定版本,目前为6.4。
示例
make init OPTIONS="webapp"
make init VERSION=7.2
make init VERSION=6.4
make init OPTIONS="webapp" VERSION=7.2
配置PhpStorm IDE的Xdebug设置
要在创建的项目中将Xdebug与PhpStorm集成,您需要执行以下操作
- 从项目的php-fpm容器中,在
设置 -> 语言与框架 -> PHP
选项卡中创建一个PHP解释器;确保在容器中Xdebug可以正常工作。 - 在
设置 -> 语言与框架 -> PHP -> 调试 -> Xdebug -> 调试
菜单中输入端口号9009
。 - 在
设置 -> 语言与框架 -> PHP -> 服务器
菜单中创建一个名为Docker
的服务(它与IDE配置中两个解释器的ServerName
字段的值相匹配)。 - 如果需要,在PHP解释器的
设置 -> 语言与框架 -> PHP -> 路径映射
中做出适当的映射。 - 点击按钮
监听PHP调试连接
;如果您有任何疑问,请阅读文档。