Heim > Backend-Entwicklung > PHP-Tutorial > Automatisierte Bereitstellung und Rollback von PHP-Anwendungen über Deployer

Automatisierte Bereitstellung und Rollback von PHP-Anwendungen über Deployer

WBOY
Freigeben: 2023-07-12 11:16:02
Original
1328 Leute haben es durchsucht

Automatisierte Bereitstellung und Rollback von PHP-Anwendungen durch Deployer

Einführung:
Im Softwareentwicklungsprozess ist die Anwendungsbereitstellung ein sehr wichtiges Glied. Die herkömmliche manuelle Bereitstellungsmethode ist nicht nur zeitaufwändig und arbeitsintensiv, sondern auch anfällig für menschliche Fehler. Um die Bereitstellungseffizienz zu verbessern und menschliche Fehler zu reduzieren, können wir automatisierte Bereitstellungstools verwenden, um eine automatisierte Bereitstellung und ein automatisches Rollback zu erreichen. In diesem Artikel wird erläutert, wie Sie mit Deployer die automatisierte Bereitstellung und das Rollback von PHP-Anwendungen implementieren.

1. Was ist Deployer?
Deployer ist ein PHP-Tool zur automatisierten Bereitstellung von Anwendungen. Es basiert auf Shell-Skript und SSH-Protokoll und kann verschiedene Aufgaben auf dem Remote-Server ausführen, wie z. B. Code-Pulling, Datenbankmigration, Dateiberechtigungseinstellung usw. Es unterstützt auch Cluster-Bereitstellungs- und Rollback-Funktionen mehrerer Server.

2. Deployer installieren
Zuerst müssen wir Deployer in der lokalen Entwicklungsumgebung installieren. Es kann über Composer installiert werden. Der Befehl lautet wie folgt:

$ composer require deployer/deployer --dev
Nach dem Login kopieren

3. Schreiben Sie die Deployer-Konfigurationsdatei.
Erstellen Sie eine Deployer-Konfigurationsdatei im Projektstammverzeichnis. In der Konfigurationsdatei können wir verschiedene Aufgaben und serverclusterbezogene Konfigurationen definieren.

  1. Server definieren

    server('stage', 'example.com') 
     ->user('deploy')
     ->identityFile('~/.ssh/id_rsa')
     ->set('deploy_path', '/var/www/stage.example.com');
    Nach dem Login kopieren

    In diesem Beispiel definieren wir einen Server mit dem Namen „stage“ und geben dabei den Hostnamen und Benutzer des Servers sowie das Projektverzeichnis auf dem Server an.

  2. Aufgaben definieren

    task('deploy', [
     'deploy:info',
     'deploy:prepare',
     'deploy:update_code',
     'deploy:shared',
     'deploy:writable',
     'deploy:clear_paths',
     'deploy:symlink',
     'deploy:unlock',
     'cleanup',
     'success'
    ]);
    Nach dem Login kopieren

    In diesem Beispiel definieren wir eine Aufgabe namens „Deploy“, die Unteraufgaben verschiedener Bereitstellungsprozesse umfasst.

4. Bereitstellung und Rollback ausführen

  1. Bereitstellung ausführen

    $ dep deploy stage
    Nach dem Login kopieren

    Nach der Ausführung des obigen Befehls stellt der Deployer eine Verbindung zum Stage-Server her, führt jede in der Bereitstellungsaufgabe definierte Unteraufgabe aus und schließt den Bereitstellungsprozess ab die Anwendung. Sie können während des Bereitstellungsprozesses detaillierte Protokollinformationen anzeigen und Fehler während des Bereitstellungsprozesses beheben.

  2. Rollback durchführen

    $ dep rollback stage
    Nach dem Login kopieren

    Wenn während der Bereitstellung etwas schief geht, können Sie den Rollback-Befehl verwenden, um die Anwendung auf die vorherige stabile Version zurückzusetzen. Der Deployer stellt eine Verbindung zum Stage-Server her, führt Rollback-Aufgaben durch und stellt den Code und die Konfigurationsdateien in ihrem vorherigen Zustand wieder her.

    5. Weitere Funktionen und Erweiterungen
    Deployer bietet außerdem viele weitere Funktionen und Erweiterungen, die je nach Bedarf konfiguriert und genutzt werden können.

    1. Parallele Bereitstellung
      Sie können den Bereitstellungsprozess beschleunigen, indem Sie parallele Aufgaben konfigurieren. Beispielsweise können Anwendungen auf mehreren Servern gleichzeitig bereitgestellt werden, um die Bereitstellungseffizienz zu erhöhen.
    2. Benutzerdefinierte Aufgaben
      Deployer ermöglicht es Ihnen, Aufgaben anzupassen und sie dem Bereitstellungsprozess hinzuzufügen. Sie können Ihren eigenen Aufgabencode entsprechend spezifischer Anforderungen schreiben, z. B. Datenbankmigration, Cache-Bereinigung usw.
    3. Erweiterungs-Plugins
      Deployer bietet viele Erweiterungs-Plugins, die für verschiedene Zwecke verwendet werden können, wie z. B. Laravel-Framework-Unterstützung, NPM/Bower-Build-Unterstützung usw. Sie können das entsprechende Plug-In entsprechend Ihren Projektanforderungen verwenden.

    Fazit:
    Mit Deployer können wir ganz einfach automatisiertes Deployment und Rollback von PHP-Anwendungen implementieren. Dies verbessert nicht nur die Effizienz der Bereitstellung, sondern reduziert auch das Auftreten menschlicher Fehler. Ich hoffe, dass dieser Artikel allen bei der Realisierung einer automatisierten Bereitstellung helfen kann.

    Das obige ist der detaillierte Inhalt vonAutomatisierte Bereitstellung und Rollback von PHP-Anwendungen über Deployer. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage