定制 abuzikhin/symfony-mysql-docker-skeleton 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

abuzikhin/symfony-mysql-docker-skeleton

Composer 安装命令:

composer require abuzikhin/symfony-mysql-docker-skeleton

包简介

A project template for Symfony application running inside of Docker containers for convenient development.

关键字:

README 文档

README

Latest Stable Version

A project template in the following configuration:

  1. Latest stable Symfony framework (6.4 at the moment), with the ability to specify the version
  2. PHP 8.3
  3. MySQL 8+ (can be altered in the docker compose file) ?
  4. Separate Docker containers for Nginx, FPM, CLI and a database
  5. CS-Fixer and Psalm on board

The concept

  1. The application and docker files are located on the same level: in the /app and /docker folders, respectively. This allows you to separate the symphony-application and docker environment variables, and to implement the mono repository pattern by adding new folders if necessary: /centrifugo, s3-storage, etc.
  2. The docker-compose.override.yaml is ignored by default, so you can add your own settings without worrying about overwriting the original ones.

Quick Start

One-liner to create a new project: composer create-project abuzikhin/symfony-mysql-docker-skeleton local_project_path && make setup-configs && make init OPTIONS="webapp" && make up

Split into steps:

  1. composer create-project abuzikhin/symfony-mysql-docker-skeleton local_project_path
  2. make setup-configs - create .env files for docker containers
  3. make init OPTIONS="webapp" - very important! Run it before making any commits to your repo. You can omit the OPTIONS parameter if you don't need to use the webapp.
  4. make up - start docker containers

Default ports are random (47001-47999) for every created project, so click the link generated in CLI with the output of make up command and enjoy!

You also can set desired ports for Nginx and MySQL manually in generated /.env file (don't forget to run make restart afterwards).

Flags

When running make init, you can use these flags:

  • OPTIONS="webapp": Includes web application features. Omit for the basic symfony/skeleton setup.
  • VERSION=X.Y: Specifies Symfony version. Defaults to the latest stable version, which is 6.4 at the moment.

Examples:

make init OPTIONS="webapp"
make init VERSION=7.2
make init VERSION=6.4
make init OPTIONS="webapp" VERSION=7.2

Configuring Xdebug settings for PhpStorm IDE

To integrate Xdebug with PhpStorm within a created project you need to do the following:

  1. Create a PHP interpreter in the Settings -> Languages & Frameworks -> PHP tab from the php-fpm container in the project; make sure that Xdebug works properly in the container.
  2. Type the port number 9009 at the menu Settings -> Languages & Frameworks -> PHP -> Debug -> Xdebug -> Debug.
  3. Create a server named Docker in the menu Settings -> Languages & Frameworks -> PHP -> Servers (it matches with the value of the ServerName field in the IDE config for both interpreters).
  4. If necessary, make proper mappings in the PHP interpreter Settings -> Languages & Frameworks -> PHP -> Path Mappings,
  5. Click the button Listen for PHP debug connections; if you have any questions, please read the documentation.

Useful makefile commands

  1. make console - default shell is zsh with preinstalled set of plugins
  2. make test - PHPUnit tests
  3. make cs - PHP CS-fixer with predefined rule sets
  4. make psalm - Psalm (default level is 1)

统计信息

  • 总下载量: 1
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 2
  • 开发语言: Makefile

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-08-25