Schedulemaster ist ein Open -Source -Task -Planungssystem. Es basiert auf der .NET Core 3.1-Plattform und unterstützt die plattformübergreifende Bereitstellung und den Betrieb mit mehreren Knoten.
ASP.NET Core3.1, EntityFramework Core3.0, MySQL5.7, Quartz.net, BeyondAdmin, JQuery ...
Vor der Verwendung bereiten Sie bitte die erforderliche Umgebung vor:
Visual Studio 2019,.NET Core3.1 SDK,Mysql 5.7(可选),SQLServer(可选),PostgreSQL(可选),Centos(可选),Docker(可选).
Das Folgende ist ein Beispiel für die Verwendung von MySQL als Datenbank und das Starten in der Konfigurationsdatei . Weitere Methoden finden Sie in der detaillierten Dokumentation.
Laden Sie den Quellcode lokal herunter, öffnen Sie die Lösung mit VS2019 und kompilieren Sie ihn durch.
Öffnen Sie die Datei appsettings.json im Root-Verzeichnis des Projekts Hos.Schedulemaster.web, ändern Sie zuerst die MySQL-Datenbankverbindungszeichenfolge, um den normalen Datenbankzugriff zu gewährleisten, und finden Sie den NodeSetting , ändern Sie IP Feld für die IP-Adresse, die der Master bereitstellt.
Öffnen Sie die Datei appsettings.json im Stammverzeichnis des Projekts Hos.Schedulemaster.quartzhost, ändern Sie zuerst die MySQL-Verbindungszeichenfolge und finden Sie den Knoten NodeSetting , setzen Sie den Namen des Worker- IdentityName , ändern Sie Port IP Feld an der IP-Adresse, die bereitgestellt werden. Lokaler Ordner. Wenn Sie einen neuen Arbeiter hinzufügen möchten, konfigurieren Sie IdentityName、IP、Port auf die gleiche Weise. Nach dem Start des Arbeiters wird seine eigenen Informationen in die Datenbank injiziert und ist im Master zu sehen.
Schnellveröffentlichungstipps: Verwenden Sie PowerShell, um das Skript
publish.ps1auf der Windows-Plattform auszuführen, um es schnelld:/sm-publishVerzeichnis zu veröffentlichen und Skriptsh publish.shauf der Linux-Plattform auszuführen, um es schnell im Verzeichnis/home/sm-publishzu veröffentlichen.
Andere Veröffentlichungsmethoden sind ebenfalls möglich. Hier ist ein Beispiel für das Ausführen von 2 Arbeiterknoten:
dotnet Hos.ScheduleMaster.Web.dll aus, um das Programm zu starten. Das erste Startup migriert automatisch und generiert die Datenbankstruktur und initialisiert die Samendaten . Öffnen Sie den Browser und geben Sie die IP und den Port zum Zugriff ein (anfänglicher Benutzername admin , Passwort 111111 ).dotnet Hos.ScheduleMaster.QuartzHost.dll --urls http://*:30001 aus, um das Programm zu starten. Öffnen Sie den Browser und geben Sie die IP und den Port ein. Sie werden eine willkommene Seite sehen, die darauf hinweist, dass der Arbeiter erfolgreich gestartet wurde.appsettings.json unter Worker in die Konfiguration von Worker2 (überspringen Sie sie, wenn sie vor der Veröffentlichung geändert wurde) und führen Sie den Befehl dotnet Hos.ScheduleMaster.QuartzHost.dll --urls http://*:30002 aus, um das Programm zu starten.Bitte stellen Sie sicher, dass der Computer vor dem Ausführen
.NET Core3.1-Laufzeitumgebung installiert hat.
Kopieren Sie die Veröffentlichungsdatei in CentOS, und die Betriebsschritte entsprechen den Windows.
docker build -t ms_master . Befehl im Veröffentlichung des Master -Veröffentlichung, um das Master -Bild zu generieren, und dann docker run -d -p 30000:30000 --name="mymaster" ms_master ausführen, um den Container auszuführen.docker build -t ms_worker . Befehl im Arbeiter veröffentlichen Verzeichnis, um ein Worker -Image zu generieren und dann docker run -d -p 30001:80 --name="myworker1" ms_worker bash --identity=docker-worker1 --ip=你的宿主机IP --port=30001 Führen Sie den Container aus, um Worker1 zu starten1.docker run -d -p 30002:80 --name="myworker2" ms_worker bash --identity=docker-worker2 --ip=你的宿主机IP --port=30002 auszuführen.docker ps aus, um den laufenden Status jedes Containers zu überprüfen. Wenn es nicht ausgeführt werden kann, überprüfen Sie bitte das Containerprotokoll. QQ -Gruppe: 824535095
Bitte zahlen Sie gerne zu zahlen. Bitte beachten Sie, ob Sie es mögen ~