Skip to content

Webanimus/symfony-dev-docker-base

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Symfony Docker Project Setup

This repository contains a Docker-based development environment for Symfony applications.

Prerequisites

  • Docker
  • Docker Compose
  • Git

Environment Setup

  1. Clone this repository:
git clone git@github.com:Webanimus/symfony-dev-docker-base.git
cd symfony-dev-docker-base
  1. Start the Docker environment:
docker compose up -d --build
  1. Create a new Symfony project:
docker compose exec php composer create-project symfony/skeleton .
docker compose exec php composer require webapp
docker compose exec php composer require symfony/orm-pack
  1. Set proper permissions:
docker compose exec php chown -R www-data:www-data var

Accessing the Application

Database Configuration

Update your .env file with these database credentials:

DATABASE_URL="mysql://symfony:symfony@database:3306/symfony?serverVersion=mariadb-10.11.2"

Docker Services

The environment includes the following services:

  • PHP (8.2-FPM): PHP service with all necessary extensions for Symfony
  • Nginx: Web server
  • MariaDB (10.11.2): Database server
  • phpMyAdmin: Database management tool
  • MailHog: Email testing tool

Database Credentials

  • Database: symfony
  • Username: symfony
  • Password: symfony
  • Root Password: root

Common Commands

Start the environment:

docker compose up -d

Stop the environment:

docker compose down

Access PHP container:

docker compose exec php bash

Install Symfony dependencies:

docker compose exec php composer install

Clear Symfony cache:

docker compose exec php php bin/console cache:clear

Development

The project directory is mounted as a volume in the PHP container. Any changes you make to your local files will be reflected immediately in the container.

Troubleshooting

  1. If you encounter permission issues:
docker compose exec php chown -R www-data:www-data var
  1. If Composer runs out of memory:
docker compose exec php php -d memory_limit=-1 /usr/bin/composer install
  1. To view logs:
docker compose logs -f

About

Base for symfony with docker for dev

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published