Deployment mit WebMatrix

In unserem letzten Blog-Eintrag ging es um die Einrichtung und ersten Schritte mit WebMatrix, die Erstellung unserer ersten Website und deren Ausführung in dem lokalen IIS.

In unserem letzten Blog-Eintrag ging es um die Einrichtung und ersten Schritte mit WebMatrix, die Erstellung unserer ersten Website und deren Ausführung in dem lokalen IIS. Dies  ist zwar ausreichend für die Entwicklung einer Website, aber natürlich fehlt nun noch das Deployment (=Veröffentlichung) auf unseren Server bei der centron. Dazu schauen wir uns zwei verschiedene Möglichkeiten solch eines Deployments an  und führen dies anhand des Produktes Economy.NET detailliert durch.

Deployment Möglichkeiten

WebMatrix 2 verfügt über zwei verschiedene Möglichkeiten der Veröffentlichung von Websites:

  • FTP
  • Web Deploy

FTP

Bei FTP geschieht das Deployment über das File Transfer Protocol. D.h. Sie nutzen die FTP-Daten, welche Sie von centron bekommen haben, und WebMatrix veröffentlicht auf diesen FTP-Server Ihre gesamte Website. Der Abgleich, welche Daten ersetzt werden müssen bzw. sich geändert haben, führt WebMatrix mithilfe des Änderungsdatums und der Dateigröße durch. Zusätzliche Informationen, außer die Dateien, können nicht abgeglichen bzw. veröffentlicht werden. FTP stellt somit die grundlegende Art einer Website-Veröffentlichung dar und wird somit fast immer unterstützt (ein FTP-Server vorausgesetzt).

Web Deploy

Mit Web Deploy (früher auch „IIS Web Deployment Tool“ genannt) werden nicht nur die Ordner und Dateien der Website veröffentlicht, sondern auch die zugehörigen Meta-Informationen. Außerdem ist es möglich über sogenannte Provider noch weitere Daten mit zu deployen: Konfigurationen, Datenbanken, Datei- und Ordnerberechtigungen, Registry Einstellungen, GAC Assemblies, SSL Zertifikate etc. Web Deploy Pakete können außerdem benutzt werden, um Websites zwischen Servern umzuziehen oder auch aus Visual Studio bzw. per Kommandozeile Websites auf einfachstem Wege zu veröffentlichen. Zudem nutzt der Web Platform Installer (mit welchem wir auch WebMatrix installiert haben) ebenfalls Web Deploy: Community Web Applikationen können mit Hilfe von Web Deploy Paketen aus dem Web Platform Installer heraus einfach und schnell installiert werden. Eine weitere Besonderheit bietet Web Deploy: durch Platzhalter in bspw. Konfigurationsdateien, können diese beim Deployment automatisch oder „manuell“ (Eingabedialog für den Benutzer) ersetzt bzw. transformiert werden. Microsoft bietet zu Web Deploy weitere Informationen über sein IIS-Portal an: Web Deploy 3.0.

Vorteile von Web Deploy gegenüber FTP

Bei dem Deployment über FTP muss ein entsprechender FTP-Server laufen, bei Web Deploy muss zwar der IIS auch richtig konfiguriert sein, so dass dieser Web Deploy unterstützt, aber es ist kein weiteres Server Produkt notwendig, weil dies direkt im IIS integriert ist. Wenn über einen FTP-Server das Deployment durchgeführt wird, dann muss darauf bereits ein richtig konfiguriertes Nutzer-Konto angelegt sein, welches Zugriff auf denjenigen Pfad bietet, der wiederum im IIS bzw. als „Virtuelles Verzeichnis“ registriert ist. Dies heißt auch, dass bereits alle notwendigen Einstellungen im IIS bezüglich des „Application Pools“, der „WebSite“ bzw. des „Virtuellen Verzeichnis“ existieren müssen. Nur so ist es möglich, dass bereitgestellte Daten (Ihre Website) auf dem FTP-Server direkt dem IIS zur Verfügung stehen, so dass dieser Ihre Website nach außen liefern kann. Web Deploy geht hierbei anders vor: zusätzlich zu den Ordnern und Dateien der WebSite können noch zahlreiche andere Informationen mit veröffentlicht werden, d.h. das WebDeploy in der Lage ist, die Website auch ohne vorherige Konfiguration des IIS komplett neu anzulegen. Darüber hinaus bietet WebDeploy, wie bereits oben angesprochen, auch die Möglichkeit ganze Datenbanken, Datei- und Ordnerberechtigungen, Registry Settings usw. mit zu veröffentlichen.

Web Deploy mit WebMatrix

Nach all der Theorie möchte ich nun mit Ihnen ein Deployment mit WebMatrix und Web Deploy auf das Hosting-Produkt Economy.NET durchführen. Zu diesem Zweck verwende ich ein eigens dafür angelegtes Konto mit der Domain http://centron-lab.de. Dieses Konto bzw. dieses Managed Hosting Produkt werden wir auch in allen nachfolgenden Beiträgen immer wieder verwenden.

Nachdem Sie WebMatrix gestartet und unsere erste Website geladen haben (Website öffnen > Meine Websites > ErsteWebsite) befinden Sie sich im Site-Workspace. Oben in der Ribbon Bar finden Sie nun den Button Veröffentlichen. Nach einem Klick öffnet sich der „Website veröffentlichen Dialog“.

Sie haben hier die Möglichkeit unter dem Punkt „Einstellungen eingeben“, ein Deployment mithilfe von FTP oder Web Deploy durchzuführen. Dies möchten wir an dieser Stelle aber bewusst nicht tun, da es eine einfachere Möglichkeit gibt:

Durch sogenannte .publishsettings-Dateien kann der IIS, aber auch beliebe Hosting-Betreiber, Einstellungen in einem Datei-Format dem Kunden zur Verfügung stellen, sodass diese Datei direkt geladen werden kann und die notwendigen Anmelde- und Server-Einstellungen nicht per Hand eintragen werden müssen. Diese Möglichkeit besteht auch bei unserem Produkt Economy.NET.

Um diese .publishsettings-Dateien herunterladen zu können, müssen wir uns zunächst auf dem centron „Control Panel“ anmelden. Die hierzu erforderlichen Anmeldedaten entnehmen Sie bitte der „Hosting-Platz Informations“ E-Mail.

Nach der Anmeldung finden Sie sich in der Übersicht wieder. Dort klicken Sie in dem gewünschten Produkt auf Web > Web Sites und gelangen zur Ansicht Ihrer, mit diesem Produkt verknüpften, Domains.

Durch das Auswählen einer Domain, gelangen Sie zu den Einstellungen dieser Domain bzw. der damit verlinkten Website. Auf dem Reiter Web Publishing finden wir die notwendigen Einstellungen für die Veröffentlichung mit Hilfe von Web Deploy. Sollten Sie dies ebenfalls noch nicht aktiviert haben, sollte dies wie auf dem Screenshot aussehen.

Mit der Eingabe eines Wunsch-Passwortes wird Web Deploy aktiviert und Sie bekommen außerdem Zugriff auf einen Download-Link für die .publishsettings-Datei: „Download Publishing Profile for this web site“. Diese Datei laden Sie herunter und geben sie anschließend in Web Matrix an. Web Matrix liest diese Datei ein und füllt die erforderlichen Einstellungen für das Web Deploy automatisch aus. Über den Button „Verbindung prüfen“ können Sie außerdem direkt schauen, ob alles funktioniert hat. Speichern Sie danach die Einstellungen.

Web Matrix führt im nächsten Schritt eine Überprüfung des Web-Servers durch und aktualisiert ggf. interne Einstellungen, damit nachher keine Probleme auftreten. Web Matrix zeigt Ihnen anschließend die positive Kompatibilität an und Sie können fortfahren.

Nachfolgend bekommen Sie sowohl eine Übersicht der Dateien und Ordner Ihrer Website angezeigt, wie auch die auszuführende Aktion (bspw. Hinzufügen oder Ersetzen). Auch sehen Sie, ob ggf. noch andere Daten übertragen werden. In unserem Beispiel ist dies die Datenbank.

Mit einem erneuten Klick auf „weiter“ wird die Veröffentlichung gestartet und am unteren Bildschirmrand können Sie den Fortschritt verfolgen. Ist das Deployment abgeschlossen, sehen Sie eine entsprechende Meldung in der Fortschrittsanzeige. Hier können Sie direkt auf Ihre Domain klicken, um Ihre Website, welche nun öffentlich über das Internet zugänglich ist, anzuzeigen.

Durch die Speicherung der Web Deploy Einstellungen und der Zuordnung zu Ihrer Website, müssen Sie den Schritt über das centron Control Panel nicht mehr durchführen, außer Sie ändern die Web Deploy Zugangsdaten. Bei dem erneuten Klick auf „Veröffentlichen“ können Sie direkt mit dem Deployment starten.

 

Kein Managed Hosting?

Sie haben kein Managed Hosting, sondern eines der anderen Produkte von centron? Und Sie interessieren sich ebenfalls für Web Deploy? Kein Problem:

Wünschen Sie weitere Informationen zur Aktivierung bzw. Nutzung von Web Deploy bei den centron Produkten Managed ServervServerRoot Server oder ccloud, schreiben Sie einfach einen Kommentar und ich werde Ihrem Wunsch kurzfristig nachkommen.

Ich habe gehört „Testen ist wichtig“!

Dies ist richtig und da wir dies als Grundbaustein ansehen, werden wir uns im nächsten Beitrag genau mit diesem Thema beschäftigen.