Einführung
Während der Entwicklung und dem Start von PHP-Projekten ist der Bereitstellungsprozess in der Regel zeitaufwändig und fehleranfällig. Um die Effizienz und Stabilität zu verbessern, wird in diesem Artikel eingeführt, wie das Bereitstellungswerkzeug verwendet wird, um die automatische Bereitstellung und ein schnelles Rollback von PHP -Projekten zu erreichen, um sicherzustellen, dass jede Version stabil und zuverlässig ist.
Was ist ein Deploymer?
Deployer ist ein Open-Source-PHP-Bereitstellungs-Tool, das prägnante DSL-Syntax (Domänenspezifische Sprache) verwendet, um den Bereitstellungsprozess einfach zu definieren. Es unterstützt eine Vielzahl von Bereitstellungsmethoden, einschließlich Git, und kann automatisch Aufgaben wie Erstellen, Berechtigungseinstellung, Service -Reloading usw. ausführen. Der Einsatz verfügt über eine gute Skalierbarkeit und Anpassung, was für die kontinuierlichen Lieferszenarien von PHP -Entwicklungsteams sehr geeignet ist.
Installieren Sie den Bereitstellung
Installieren Sie ihn zunächst über den Komponisten: So installieren Sie es mit dem Bereitstellungsbereich:
composer require deployer/deployer --dev
Nach Abschluss der Installation wird im Projektroot -Verzeichnis eine Konfigurationsdatei bereitgestellt.
Konfigurieren Sie Bereitstellungsskripte
Im Folgenden finden Sie ein Basic `Deploy.php` -Konfigurationsbeispiel, einschließlich Serververbindungen, Code -Repository, gemeinsam genutzten Verzeichniseinstellungen und benutzerdefinierten Aufgaben:
<?php
require 'vendor/autoload.php';
require 'recipe/common.php';
// Serverkonfiguration
server('production', 'your_server_address')
->user('your_username')
->password('your_password')
->set('deploy_path', '/var/www/html/your_project_path');
// Projektkonfiguration
set('repository', 'your_git_repository');
set('shared_files', ['.env']);
set('shared_dirs', ['storage']);
set('writable_dirs', ['bootstrap/cache']);
set('keep_releases', 5);
// Aufgaben bauen
task('build', function () {
run('cd {{release_path}} && build-script');
});
// Entsperren automatisch, wenn die Bereitstellung fehlgeschlagen ist
after('deploy:failed', 'deploy:unlock');
// Benutzerdefinierte Aufgaben:Neu laden PHP-FPM
task('reload:php-fpm', function () {
run('sudo systemctl reload php-fpm');
});
// Automatisierter Bereitstellungsprozess
before('deploy', 'build');
after('deploy', 'reload:php-fpm');
Bitte ersetzen Sie die Serveradresse, den Benutzernamen, die Lageradresse und andere Felder in der obigen Konfiguration gemäß der tatsächlichen Situation.
Führen Sie die Bereitstellungsbefehle aus
Führen Sie sie nach Abschluss der Konfiguration aus der Befehlszeile im Projektstammverzeichnis aus:
dep deploy
In diesem Befehl wird der Code automatisch im Git -Repository gezogen, ihn im angegebenen Verzeichnis des Servers bereitgestellt und voreingestellte Aufgaben ausführt. Der gesamte Prozess kann stark automatisiert sein und den Bereitstellungsprozess erheblich vereinfachen.
Projektrollback -Betrieb
Wenn Probleme in einem bereitgestellten Projekt auftreten, können Sie den folgenden Befehl schnell ausführen, um zur vorherigen stabilen Version zurückzurollen:
dep rollback
Der Rollback-Vorgang stellt die vorherige Version wieder her und führt die entsprechenden Automatisierungsaufgaben erneut aus, um sicherzustellen, dass sich der Projektdienst wieder normalisiert.
Zusammenfassen
Mit Hilfe des Bereitstellers können der Bereitstellungs- und Rollback -Prozess von PHP -Projekten standardisiert und automatisiert werden, wodurch menschliche Betriebsfehler und die Verbesserung der Release -Effizienz stark reduziert werden. Durch flexible Konfigurations- und benutzerdefinierte Aufgabenmechanismen ist Deployer zu einem unverzichtbaren Bereitstellungswerkzeug für PHP -Entwicklung, -betrieb und -wartung geworden.