version 2
Go to file
2021-04-17 23:45:44 +02:00
app adding debug bundle and var-dumper requirement 2021-04-17 23:45:44 +02:00
data initial commit 2021-04-17 21:45:30 +02:00
docker_build add docker config 2021-04-17 21:59:04 +02:00
.gitignore yarn install --force in node container 2021-04-17 23:27:46 +02:00
docker-compose.yml add docker config 2021-04-17 21:59:04 +02:00
docker-node.sh yarn install --force in node container 2021-04-17 23:27:46 +02:00
README.md adding debug bundle and var-dumper requirement 2021-04-17 23:45:44 +02:00

Environnement de développement Docker pour démarrer un nouveau projet Symfony5

Présentation

L'objectif de ce dépôt est de proposer et de faire évoluer une configuration de départ pour démarrer très simplement un nouveau projet Symfony dans des conteneurs Docker.

En suivant pas-à-pas les instructions à partir du chapitre "Installation", on peut démarrer en quelques minutes un nouveau projet.

Le dépôt propose plusieurs branches qui peuvent être utilisées selon le point de départ recherché:

1_docker_ready

La branche 1_docker_ready fournit juste le docker-compose.yml et les Dockerfile qui permettent de construire les conteneurs.

  • $ cd my-project-dir
  • $ docker-compose build
  • $ docker-compose up -d
  • $ docker-compose exec -u 1000 php bash

A ce stade les commandes composer et symfony sont disponibles pour lancer la création du projet. Après ça on choisira dans le fichier app/.env le type de base de donnée. Un conteneur est prévu pour utiliser postgresql.

2_symfony_demo

  • commandes exécutées:
    • $ symfony new --demo demo
    • $ mv demo/* . && mv demo/.* . && rmdir demo

Cette branche démarre d'une installation toute prête de la demo Symfony. La db est enregistrée dans le repo dans un simple fichier sqlite (app/data/database.sqlite). Le conteneur docker postgresql est donc désactivé.

3_start_new_project

  • commandes exécutées:
    • $ symfony new myproject
    • $ mv myproject/* . && mv myproject/.* . && rmdir myproject
    • composer require annotations twig orm form form validator maker-bundle security-csrf \ && composer require --dev profiler
    • Adapt querystring in ./app/.env:
      --- DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=13&charset=utf8"
      +++ DATABASE_URL="postgresql://postgres:secret@db:5432/postgres?serverVersion=12&charset=utf8"
      
    • Create database schema: bin/console doctrine:schema:create
    • $ composer require symfony/webpack-encore-bundle and $ yarn install --force
    • $ yarn add sass sass-loader
    • $ composer require --dev symfony/debug-bundle symfony/var-dumper