Outils pour utilisateurs

Outils du site


symfony4:deploiement_premier_deploiement

Premier déploiement

Voici les étapes du premier déploiement d'une application.

Envoyer les fichiers de l'application vers le serveur

Écrire un script nommé deploy-prd à placer à la racine du projet :

#!/bin/sh
rsync -av \
    ./ \
    root@mon_serveur.net:/var/www/mon_projet/ \
    --include=public/build \
    --include=vendor \
    --exclude-from=.gitignore \
    --exclude=".*"
Ne pas oublier de terminer les chemins par des “/”.

Rendre le script exécutable :

chmod +x deploy-prd

Exécuter le script deploy-prd.

cd /home/marc/PrgWeb/mon_projet
./deploy-prd

Enfin, envoyer le fichier .env qui n'est pas déployé par le script.

rsync .env root@mon_serveur.net:/var/www/mon_projet/

Modifier les propriétaires et les permissions

Modifier le propriétaire de tout le dossier :

sudo chown -R root:root /var/www/mon_projet/

Créer un dossier var et changer son propriétaire et ses permissions :

cd /var/www/mon_projet
sudo mkdir var
sudo chmod -R 777 var/
sudo chown -R www-data:www-data var/

Créer la base de données

Se connecter sur le phpMyAdmin du serveur.

Créer un nouvel utilisateur et lui donner les droits SELECT, INSERT, UPDATE, DELETE, CREATE, ALTER dans les privilèges globaux.

Éditer le fichier .env pour modifier la configuration :

DATABASE_URL=mysql://db_user:db_password@localhost:3306/db_name

Créer la base de données :

php bin/console doctrine:database:create

Exécuter les migrations :

php bin/console doctrine:migrations:migrate

Passer en environnement Prod

Éditer le fichier .env et modifier la valeur APP_ENV :

APP_ENV=prod

Nettoyer le cache

php bin/console cache:clear

Résultat :

// Clearing the cache for the prod environment with debug false
[OK] Cache for the "prod" environment (debug=false) was successfully cleared.

Configurer un Virtual Host dans Apache

Doc: https://symfony.com/doc/current/setup/web_server_configuration.html

Installer le fichier .htaccess dans le dossier /public :

cd /var/www/mon_projet/
composer require symfony/apache-pack

(Si un warning est affiché, répondre YES).

Créer le fichier /etc/apache2/sites-available/mon_projet.conf :

<VirtualHost *:80>
        ServerName mon_projet.marclebrun.be
        ServerAdmin myself@mail.com
        DocumentRoot /var/www/mon_projet/public
 
        <Directory /var/www/mon_projet/public/>
                Options Indexes FollowSymLinks Multiviews
                AllowOverride all
                Require all denied
                Require all granted
                Allow from all
        </Directory>
</VirtualHost>

Activer le nouveau site et recharger Apache :

a2ensite mon_projet.conf 
systemctl reload apache2
symfony4/deploiement_premier_deploiement.txt · Dernière modification: 2020/03/31 05:29 par marclebrun