PHPackages                             abuzikhin/symfony-mysql-docker-skeleton - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [DevOps &amp; Deployment](/categories/devops)
4. /
5. abuzikhin/symfony-mysql-docker-skeleton

ActiveTemplate[DevOps &amp; Deployment](/categories/devops)

abuzikhin/symfony-mysql-docker-skeleton
=======================================

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

01Makefile

Since Aug 25Pushed 1y agoCompare

[ Source](https://github.com/ABuzikhin/symfony-docker-skeleton)[ Packagist](https://packagist.org/packages/abuzikhin/symfony-mysql-docker-skeleton)[ RSS](/packages/abuzikhin-symfony-mysql-docker-skeleton/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

Symfony + MySQL w/ Docker config
================================

[](#symfony--mysql-w-docker-config)

[![Latest Stable Version](https://camo.githubusercontent.com/942a9d3865c0753639f2d97dd27c4d63d1a1a3e6d20fea031d1b217c49b28042/68747470733a2f2f706f7365722e707567782e6f72672f616c79616d6f76736b792f73796d666f6e792d646f636b65722d736b656c65746f6e2f76657273696f6e2e737667)](https://packagist.org/packages/alyamovsky/symfony-docker-skeleton)

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
===========

[](#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
===========

[](#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
=====

[](#flags)

When running make init, you can use these flags:

- `OPTIONS="webapp"`: Includes [web application](https://symfony.com/doc/current/setup.html#creating-symfony-applications) 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
--------------------------------------------

[](#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](https://www.jetbrains.com/help/phpstorm/debugging-with-phpstorm-ultimate-guide.html).

Useful makefile commands
========================

[](#useful-makefile-commands)

1. `make console` - default shell is zsh with preinstalled set of [plugins](https://github.com/alyamovsky/symfony-docker-website-skeleton/blob/main/docker/configs/dev/php-cli/.zshrc)
2. `make test` - PHPUnit tests
3. `make cs` - PHP CS-fixer with predefined [rule sets](https://github.com/alyamovsky/symfony-docker-website-skeleton/blob/main/app/.php_cs.dist)
4. `make psalm` - Psalm (default level is 1)

###  Health Score

14

—

LowBetter than 2% of packages

Maintenance28

Infrequent updates — may be unmaintained

Popularity1

Limited adoption so far

Community8

Small or concentrated contributor base

Maturity19

Early-stage or recently created project

 Bus Factor1

Top contributor holds 94.3% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/f367b90680b726a17f84ba496389e8c22925869a04c5e4f8bc7189dd59cf8976?d=identicon)[dron2004](/maintainers/dron2004)

---

Top Contributors

[![alyamovsky](https://avatars.githubusercontent.com/u/23259219?v=4)](https://github.com/alyamovsky "alyamovsky (50 commits)")[![ABuzikhin](https://avatars.githubusercontent.com/u/135565897?v=4)](https://github.com/ABuzikhin "ABuzikhin (3 commits)")

### Embed Badge

![Health badge](/badges/abuzikhin-symfony-mysql-docker-skeleton/health.svg)

```
[![Health](https://phpackages.com/badges/abuzikhin-symfony-mysql-docker-skeleton/health.svg)](https://phpackages.com/packages/abuzikhin-symfony-mysql-docker-skeleton)
```

###  Alternatives

[deployer/deployer

Deployment Tool

11.0k25.4M207](/packages/deployer-deployer)[appwrite/server-ce

End to end backend server for frontend and mobile apps.

55.3k84.2k](/packages/appwrite-server-ce)[pragmarx/health

Laravel Server &amp; App Health Monitor and Notifier

2.0k1.0M2](/packages/pragmarx-health)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[heroku/heroku-buildpack-php

Toolkit for starting a PHP application locally, with or without foreman, using the same config for PHP and Apache2/Nginx as on Heroku

8161.3M10](/packages/heroku-heroku-buildpack-php)[tiamo/phpas2

PHPAS2 is a php-based implementation of the EDIINT AS2 standard

4674.7k](/packages/tiamo-phpas2)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
