Mehr

Wie baut man QGIS Server auf OpenShift?

Wie baut man QGIS Server auf OpenShift?


Ich konnte Geoserver ausführen. Leider mache ich meine Projekte im QGIS und Styles sind im SLD 1.1 kodiert. (nicht unterstützt von GeoServer v. 1.1 nur in v. 1.0).

In Anbetracht des oben Gesagten möchte ich auf OpenShift QGIS Server installieren. Aber ich kann nirgendwo eine Anleitung "für Dummies" finden.


Lesen Sie hier den Teil zum Erstellen Ihrer eigenen Kassette:

https://developers.openshift.com/get-involved/extend-openshift.html


OpenShift: So aktualisieren Sie eine App basierend auf ImageStream

Ich habe ein Projekt auf OpenShift 4.2 mit einem ImageStream erstellt, der ein Image von Quay.io zieht:

Jetzt erstelle ich ein neues Projekt, um eine App basierend auf diesem ImageStream zu hosten

Die App ist erstellt und ich kann sie verwenden, indem ich sie freilege. (Aber kein Build oder BuildConfig wird erstellt. Warum. )

Jetzt aktualisiere ich das Image auf Quay.io mit einer neuen Version und importiere die neue Version in das xxx-imagestream-Projekt:

Die Frage ist: Wie aktualisiere ich meine App (myapp)? Mit anderen Worten, wie kann ich einen neuen Build von "myapp" basierend auf dem aktualisierten ImageStream starten?


CodeReady Containers bringt einen minimalen OpenShift 4-Cluster auf Ihren lokalen Laptop oder Desktop-Computer! Laden Sie es hier herunter: CodeReady-Container für OKD-Images

OKD ist ein Verteilung von Kubernetes optimiert für kontinuierliche Anwendungsentwicklung und Multi-Tenant-Bereitstellung. OKD fügt hinzu entwickler- und betriebsorientiert Tools auf Kubernetes, um eine schnelle Anwendungsentwicklung, eine einfache Bereitstellung und Skalierung sowie eine langfristige Wartung des Lebenszyklus für kleine und große Teams zu ermöglichen. OKD ist ein Geschwister Kubernetes-Verteilung an Red Hat OpenShift.

OKD bettet Kubernetes ein und erweitert es um Sicherheit und andere integrierte Konzepte. OKD wird in github und in der Dokumentation auch als Origin bezeichnet.

Wenn Sie Support auf Unternehmensebene oder Informationen zur Partnerzertifizierung suchen, bietet Red Hat auch die Red Hat OpenShift Container Platform.


1 Antwort 1

Ich werde diese Antwort verfeinern, wenn / wenn ich es zum Laufen bringe.

Haben Sie auf Ihrer OpenShift-Anwendungsseite unter Ihrer Cartridge auf den Link "Continuous Integration - Enable Jenkins" geklickt?

Sobald ich dies getan habe, änderte sich meine Git-Push-Ausgabe von:

Aber wenn ich das bin-Verzeichnis aus meinem Quellcode entferne, dann funktioniert die Website nicht mehr, obwohl der Build "erfolgreich" ist. Es ist also offensichtlich nur das blinde Kopieren der Dateien aus Git.

Als nächstes habe ich ein Update-Package -reinstall -ProjectName OpenShift in der Paket-Manager-Konsole durchgeführt, dann mit der rechten Maustaste auf die Lösung geklickt und "NuGet-Paketwiederherstellung aktivieren" ausgewählt und diese Änderungen festgeschrieben/übertragen.

Im Jeninks-Manager bin ich zu Configure the build gegangen und habe xbuild OpenShift.sln nach der Gear-Build-Zeile im Bereich "Execute shell" hinzugefügt.

Jetzt ist es tatsächlich versucht um einen echten Build zu machen, der mit dem Fehler fehlschlägt:

Es sieht so aus, als ob es dieses Problem sein könnte, also habe ich das folgende manuelle Diff zu OpenShift.csproj gemacht:

und von Program Files (x86)MSBuildMicrosoftVisualStudiov12.0WebApplications in den obigen Pfad in meinem lokalen Projekt kopiert.


Wenn Sie mit dem einfachen NodeJS-Backend-Beispiel fortfahren, stellen Sie möglicherweise fest, dass das von OpenShift verwendete Basis-NodeJS-Image möglicherweise nicht für Sie geeignet ist (aus verschiedenen Gründen). Vielleicht möchten Sie das offizielle NodeJS-Image von Docker verwenden. Natürlich kann es andere Gründe geben, die nicht NodeJS sind, um einen Container für Ihre Anwendung zu erstellen, z. spezielle Umgebungsvariablen usw. Hier würden Sie ein Dockerfile verwenden.

Sie können auch ein vorgefertigtes Docker-Image bereitstellen. Beachten Sie, dass Sie mit der OpenShift-Sicherheitsbeschränkung standardmäßig keine Container als root ausführen können. Der Artikellink nennt dies und eine Problemumgehung für diese Einschränkung.


Funktionen und Vorteile

Einfach verwalten. In der Cloud oder überall.

Red Hat® OpenShift® bietet automatisierte Installation, Upgrades und Lifecycle-Management im gesamten Container-Stack – dem Betriebssystem, Kubernetes- und Cluster-Services sowie Anwendungen – in jeder Cloud.

Schnell bauen. Zuerst versenden. Überall bereitstellen.

Red Hat OpenShift unterstützt Teams beim Aufbau mit Geschwindigkeit, Agilität, Vertrauen und Auswahl. Code im Produktionsmodus überall dort, wo Sie bauen möchten. Machen Sie sich wieder der Arbeit zu, die zählt.

Erstellen Sie mit Kubernetes. Vertrauen Sie Red Hat.

Red Hat OpenShift konzentriert sich auf Sicherheit auf jeder Ebene des Container-Stacks und während des gesamten Anwendungslebenszyklus. Es beinhaltet langfristigen Enterprise-Support von einem der führenden Kubernetes-Anbieter und Open-Source-Softwareunternehmen.


Arch Linux-Benutzer-Repository

Paketaktionen

Git-Klon-URL: https://aur.archlinux.org/qgis-git.git (schreibgeschützt, zum Kopieren anklicken)
Paketbasis: qgis-git
Beschreibung: Geographisches Informationssystem (GIS), das Vektor-, Raster- und Datenbankformate unterstützt - Entwicklungsmaster
Upstream-URL: http://qgis.org/
Schlüsselwörter: GIS Qt5
Lizenzen: GPL
Bietet: qgis
Einreicher: saultdon
Betreuer: gälisch (Fincer, qs9rx)
Letzter Verpacker: qs9rx
Stimmen: 17
Popularität: 0.000000
Zuerst eingereicht: 2015-08-20 03:06
Letzte Aktualisierung: 2021-02-20 13:32

Abhängigkeiten (39)

    (exiv2-git, exiv2-pre) (expat-git) (geos-git) (gsl-git) (libzip-git) (khronos-ocl-icd-git) (proj-configure-git, proj-git) ( protobuf3-git, protobuf-git, protobuf-static) (python-gdal-hdf4, python-gdal-ecw) (python-numpy-git, python-numpy-mkl-bin, python-numpy-mkl, python-numpy- openblas) (python-psycopg2-binär, python2-psycopg2-binär)
  • python-sip (python-sip4) (qca-git, qca-qt5-git) (qt5-3d-git) (qt5-script-git) (qt5-serialport-git) (qt5-tools-git) (qt5- webkit-git) (qt5-xmlpatterns-git)
  • qtkeychain (qtkeychain-qt5) (sqlite-replication, sqlite-minimal-git, sqlite-fts3-parenthesis, sqlite-fossil) (cmake-git) (machen) (git-git) (machen)(machen)(optional) &ndash für qgis Mapserver(optional) &ndash für GPS-Plugin(optional) &ndash für GRASS-Anbieter und Plugin (6 oder 7)(optional) &ndash Oracle-Anbieter (pipelinedb, agensgraph-git, postgresql-1c, postgresql-src-beta, postgresql-9.5, postgresql-9.4, postgresql-11, postgresql-lts, postgresql-9.6, postgresql-10, postgresql-12, postgresql-src) (optional) &ndash für Postgis- und SPIT-Unterstützung

Erforderlich von (4)

Quellen (1)

Angepinnte Kommentare

Gälisch kommentiert 2017-03-06 20:58

Dies ist der Master-Zweig von qgis (3.30), der aufgrund von Upstream-Problemen oder schnellen Änderungen der Abhängigkeiten möglicherweise nicht kompiliert werden kann.

Neueste Kommentare

Qs9rx kommentiert 2021-01-20 20:51 20

Ah, tut mir leid wegen Protobuf, ich habe es vergessen. Übrigens habe ich heute eine Anfrage an den Betreuer gesendet, das Paket zu übernehmen.

queue_properties scheint mit opencl verwandt zu sein:

Mit installierten opencl-headern, opencl-mesa, opencl-nvidia, opencl-clhpp:

Keine Opencl-Pakete installiert:

Nur opencl-header und opencl-clhpp installiert:

Opencl-nvidia gerade installiert:

Kompilieren stürzt mit Sereval-Fehler ab: ‘queue_properties’ wurde in diesem Bereich nicht deklariert meinten Sie ‘QueueProperties’?

Einfach opencl-nvidia und opencl-header installiert:

Es scheint also, als ob die libOpenCL.so von opencl-nvidia mit den internen Headern kollidiert. Installieren Sie opencl-header und Sie sollten gut sein, opencl-clhpp könnte besser sein. Keine Ahnung, wie man das in einem PKGBUILD löst. Könnte ein Upstream-Bug sein.

DarrSonik kommentiert 01.01.2021 19:14

Ja, es stellte sich heraus, dass ich das Protobuf-Paket nicht hatte und es nicht explizit in der PKGBUILD aufgeführt ist. Als ich das installierte und erneut versuchte zu bauen, begann der Build. Aber dann bekam ich verschiedene Fehler, wie Namensfehler (z.B. queue_properties anstelle von QueueProperties, laut stderr-Ausgabe) in der Quelle. Vielleicht habe ich einen Git-Clone, der kurz darauf mit einem weiteren Git-Push repariert werden sollte. Ich habe jetzt qgis-ltr installiert. Kann das morgen mal ausprobieren. Danke trotzdem.

Qs9rx kommentiert 01.01.2021 19:03

Wie können wir eine Problemumgehung finden, wenn wir nicht wissen, was der Fehler auf Ihrer Seite war? Für alle anderen könnte es eine volle Festplatte sein )

Ich bin mir nicht sicher, warum die Datei qgis-3-fix-sip-name.patch noch im Paket enthalten ist, die PKGBUILD verwendet sie nicht mehr.

Ich habe das Paket gerade ausprobiert und es wurde ohne Probleme mit dem python-pyqt5-sip-Fix kompiliert. Könnte eine Abhängigkeit sein, die nicht explizit in der PKGBUILD aufgeführt ist.

DarrSonik kommentiert 01.01.2021 11:35

Zuerst habe ich python-sip-pyqt5 in python-pyqt5-sip im Depended-Array in PKGBUILD geändert. Dann habe ich versucht, dies mit dem mit dem Paket gelieferten Patch zu erstellen, indem ich patch -Np1 < "$ ." hinzugefügt habe/qgis-3-fix-sip-name.patch" in der Vorbereitungsfunktion. Es schlägt fehl.

Dann habe ich versucht zu bauen, ohne den Patch anzuwenden, es schlägt immer noch fehl. Kennt jemand Abhilfe? Oder was fehlt mir?

Qs9rx kommentiert 2020-12-10 14:22

Keine Probleme mit Python 3.9 hier. Einziges Update, das in der PKGBUILD benötigt wird, ist immer noch das Paket "python-pyqt5-sip".

Marcocurreli kommentierte am 08.12.2020 22:11

QGis kompiliert nicht mit Python 3.9

Qs9rx kommentiert 2020-08-13 21:19

Es kompiliert gut mit python-pyqt5-sip

Geosam kommentiert 28.04.2020 14:02

Bitte aktualisieren Sie auf 3.12.0-Master

Qs9rx kommentiert 2020-03-24 21:28

Und so hat qgis-git gerade erfolgreich das neueste 2d0ffedc70 für mich kompiliert.

Qs9rx kommentiert 2020-03-24 19:47

Copyright & Kopie 2004-2021 aurweb-Entwicklungsteam.

AUR-Pakete sind vom Benutzer erstellte Inhalte. Jegliche Nutzung der bereitgestellten Dateien erfolgt auf eigene Gefahr.


Wie mache ich schnelle JSON-Antworten (oder gleichwertig) zwischen Server-App und Front-End-Apps, die alle auf OpenShift ausgeführt werden?

Ich habe ein System mit 5 Quelldatenspeichern (meist PostgreSQL-Datenbanken), von denen ich sie alle mit Containern verbinden möchte, die auf OpenShift laufen: Eine Bibliothek von Reaktionsanwendungen, deren Komponenten AJAX-Anfragen für Datenfeeds von einer Thin-Server-Instanz stellen, die auch läuft auf OpenShift.

Bisher habe ich folgendes erstellt:

  • Ein Testserver (Flask mit Flask_restful und sqlalchemy ), der eine direkte Verbindung zu einem der Datenspeicher hat und REST-JSON-Antworten jeder der angeforderten Tabellen in der Datenbank zurückgeben kann
  • Eine node.js-App, die aus zwei Reaktionskomponenten (D3.js-Visual und Datentabelle) besteht, die beim Mounten/Aktualisieren die JSON-Antwort einer der Datenbanktabellen verbrauchen

Im Produktionssystem möchte ich Folgendes hinzufügen:

    um das Überholen zu vermeiden, das ich derzeit mache
  • Verbinden Sie meinen Server mit einem Redis-Datencache, um die Anforderungen an die Datenspeicher zu reduzieren

Meine Frage:

Da einige der Daten aus den Datenspeichern groß sein können (>1 Mio. Datensätze), wie wäre dies der optimale Weg?


Wie baut man QGIS Server auf OpenShift? - Geografisches Informationssystem

Die neueste Version ist OpenJUMP 1.16 ab 3. Januar 2021. Download OpenJUMP 1.16 Hier.

Es gibt auch Entwicklungs-Snapshots für diejenigen, die nicht auf die nächste Version warten möchten.

Was ist. OpenJUMP ?

OpenJUMP ist ein Open-Source-Geographisches Informationssystem (GIS), das in der Programmiersprache Java geschrieben ist. Es wird von einer Gruppe von Freiwilligen aus der ganzen Welt entwickelt und gepflegt. OpenJUMP begann als JUMP GIS, das von Vivid Solutions entwickelt wurde.

Was kann. OpenJUMP. tun?

Das aktuelle Version kann Shapefiles einfache GML-Dateien sowie verschiedene andere Vektorformate über Plugins lesen und schreiben. Es kann auch aus mehreren räumlichen Datenbanken lesen und in Postgis schreiben. Es unterstützt Bilder und WFS- und WMS-Webdienste. So können Sie es als GIS Data Viewer verwenden. Seine besondere Stärke liegt jedoch in der Bearbeitung von Geometrie- und Attributdaten. Man kann die Darstellung von Daten in der Kartenanzeige von OpenJUMP gestalten und die Ansicht in SVG exportieren. Eine wachsende Zahl von Vektoranalysewerkzeugen für topologische Analysen und Überlagerungsoperationen ist ebenfalls verfügbar. OpenJUMP 1.8 fügt Koordinatenreferenzsystemtransformationen hinzu und 1.9 fügt verschiedene Lesefähigkeiten für räumliche Datenbanken sowie viele Fehlerkorrekturen und Verbesserungen hinzu. Mehr Infos in unserem Fatcs-Sheet.

Ausführlich Informationen zu OpenJUMP finden Sie auf unserer Wiki.


Red Hat Satellite ist eine Systemverwaltungslösung, die die Bereitstellung, Skalierung und Verwaltung von Red Hat-Infrastrukturen in physischen, virtuellen und Cloud-Umgebungen vereinfacht. Satellite ermöglicht es Benutzern, den gesamten Lebenszyklus von Red Hat-Systemen zu kontrollieren und sicherzustellen, dass sie effizient, sicher und konform mit verschiedenen Standards laufen. Durch die Automatisierung der meisten Aufgaben im Zusammenhang mit der Systemwartung hilft Satellite Unternehmen, die Effizienz zu steigern, die Betriebskosten zu senken und es der IT zu ermöglichen, besser auf strategische Geschäftsanforderungen zu reagieren.

Satellite besteht aus einem zentralisierten Satellite Server. Je nach Einrichtung Ihres Rechenzentrums, Organisationsdesign und geografischen Standorten können Sie über lokale Capsule-Server verfügen, bei denen es sich um Proxys handelt, die Inhalte lokal verwalten und Abonnements, Registrierungen und Inhalte vom zentralen Satellitenserver beziehen.


Schau das Video: 2019 - Running QGIS Server in production