Frage

Um die Bereitstellung / Build-Prozess meines ASP.NET app zu verbessern, würde Ich mag eine .bat machen, dass

  • baut die aktuelle Lösung im Release-Modus
  • xcopy die Dateien auf einem Remote-Server

über die Befehlszeile ein Release-Build erstellen ist recht einfach.

Aber wie kann ich die Dateien auf den Remote-Server xcopy?

Ich glaube, ich habe das Remote-Ziel zu einem Netzlaufwerk zuordnen (?). Ich konnte jedoch nicht auf den Remote-Server verbinden, obwohl ich die Dateifreigabe für den Ordner auf dem Server aktiviert habe. Vielleicht ist die Firewall die Anforderung blockiert? Welchen Port soll ich öffnen? Oder gibt es eine andere Lösung?

Bearbeiten

Danke für alle Antworten so weit, aber ich brauche wahrscheinlich einen Schritt für Schritt Anleitung, wie man die Ordnerfreigabe auf dem Server einzurichten. Ich teilte den Ordner, ich öffnete Port 445, so dass ich mit dem Server verbinden kann, aber immer noch, kann ich nicht von meinem lokalen Rechner auf den Server, um den Netzwerkpfad zu einem Systemlaufwerk verbinden abzubilden.

War es hilfreich?

Lösung

Da Sie eine ASP.Net-Website bereitstellen, gehe ich davon aus, dass Sie in einer Windows-Umgebung, sind (nicht klug ist? :)).
DAMIT ! Vergessen Sie .bat und gehen für POWERSHELL

Wie auch immer, dies ist nicht Punkt Ihrer Frage ... So kopieren Sie auf einem Remote-Ordner sollten Sie die Rechte zu tun haben, so auf die Remote Computer.

Überprüfen Sie, ob Sie das gleiche Konto auf dem lokalen Computer und auf der Fernbedienung eine haben. wenn Sie auf Ihrem lokalen Computer in der Domäne „Arbeit“ mit dem Login „Pipo“ Zum Beispiel, angemeldet sind, müssen Sie die Rechte auf dieses Konto geben in Ihren speziellen Ordner auf dem Remote-Computer zu schreiben.

Sie können mit einem Rechtsklick auf den Ordner, Sicherheitsoptionen erreichen, dass, und dann die richtige Identität auswählen.

Hier ist eine Schritt-für-Schritt-Anleitung:

http://support.microsoft.com/kb/301281

Andere Tipps

Es könnte sich lohnen, die Dateien mit XCOPY über einen UNC-Pfad zu bewegen

  

\\ machine \ Ordner

Das wird Sie benötigen Zugriff haben von den ursprünglichen Server in den Ordner. Überprüfen Sie, ob der Ordner freigegeben wurde, und dass die entsprechenden Lese- / Schreibrechte erteilt wurden.

Wenn der Server in Ihrem lokalen Netzwerk ist, würde ich statt robocopy mit xcopy vorschlagen - es hat viele weitere nützliche Optionen und die Fähigkeit, auf Fehler zu wiederholen. Es behandelt UNC-Namen ganz gut (wie ich glaube xcopy auch tut). Ich denke, es auf neueren Windows-Clients verfügbar ist - wenn es nicht auf Ihrem Gerät ist Google für sie - es in verschiedenen Resource Kit Downloads verfügbar ist (ich weiß nicht, die Details, wenn / falls Microsoft beginnt es in der OS-Distribution, weil ich hatte es für eine lange, lange Zeit jetzt in meinem Utility-Kit).

Wenn der Server nicht lokal ist, können Sie Skript die Befehlszeile FTP-Client die Übertragung durchzuführen. Wenn Sie zusätzliche Flexibilität oder Sicherheit dort brauchen, sind viele andere Dateiübertragungsoptionen, einschließlich WinSCP .

Natürlich in jedem Fall (lokal oder remote Server), die Berechtigungen des Servers und Ihre Authentifizierung muss richtig eingestellt werden, damit diese eine Chance haben, zu arbeiten.

Sie können jeden beliebigen UNC-Pfad verwenden: \\machine\sharedFolder. Wenn Sie nicht über einen freigegebenen Ordner einrichten möchten, können Sie eines der Laufwerke auf der Maschine verweisen auf ein $ -Zeichen mit: \\machine\c$\program files\etc. Wenn Ihre Maschinen in Active Directory sind, oder wenn Sie einen lokalen Benutzer auf dem Zielcomputer mit dem gleichen Benutzernamen und ein Passwort wird Windows die Authentifizierung nahtlos verarbeiten.

Haben Sie versucht, es zu entfesseln?

http://www.eworldui.net/unleashit/

Es kann Dateien über Netzwerke hinweg bewegen, führen bittet-Dateien vor bauen, Datei Maskierung, etc ...

Früher habe ich es zu benutzen, bevor sie auf .net 1.1-Projekte.

Ich glaube, Sie wollen:

XCOPY c:\myproject\build\*.* \\server\\build\ /S /E

Alle oben genannten scheinen große Antworten zu sein - Sie bei Verwendung eines msbuild Skript und die msbuild Gemeinde Aufgaben all dies zu tun aussehen könnte -. Sie können Build Reißverschluss und es zu einem Remote-Server ftp

Ich habe das gerade eingestellt ist für einen unserer Standorte auf, nahm ein paar Stunden, meinen Kopf um es zu bekommen, aber es baut den Standort in Release, aktualisiert die Konfigurationsdateien für die Produktion, entfernt überflüssige Dateien und dann funktioniert die laden.

nach hier für so viele Antworten suchen, ist die Lösung

"xcopy D:\\folder\\container \\\\servername\\folder\\container\\ \/E \/H \/Y"
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top