Skip to content

ocp-power-demos/ppc64le-qgis

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Demonstation of qgis (https://www.qgis.org) on ppc64le. Here, we have supplied a Dockerfile to build container image that runs QGIS Server on ppc64le

Attribution: This is just demonstation of how one can use QGIS inside docker container for an architecture like ppc64le, and not original work. Please refer to https://www.qgis.org ,for complete introduction and details about the free opensource professional and powerful desktop GIS.

QGIS documentation: https://www.qgis.org/en/docs/index.html

Steps to build a sample docker image on ppc64le

Step 1: Clone the repositoy, Navigate to ppc64le-qgis

$ git clone https://github.com/mithunhr87/ppc64le-qgis.git
$ cd ppc64le-qgis

Step 2: Build the docker image , Please substitute the image name and version you prefer in below command

$ export IMAGE=ppc64le
$ export TAG=qgis
$ docker build -t  $IMAGE:$TAG .

Step 3: Run the docker image with port mapping , first entry will be hostport, second port entry is container port, Here we have used 6080 at both the places The docker image uses noVNC - https://github.com/novnc/noVNC to provision VNC to browser

$ docker run -it -p 6080:6080 $IMAGE:$TAG

Step4: once the container is running, Navigate to http://<hostname>:6080/vnc.html, TestVNC is the password, can be changed in entrypoint.sh script as needed. qgis running inside a container will appear on successfull connection to vnc

A sample .shp file of Alaska will appear on the qgis, However you can open and use any gis supported file/project

Deployment on OpenShift

To deploy newly built qgis container image for ppc64le architecture, navigate to ppc64le-qgis repository

  1. Logon to OpenShift
$ oc login -u <username> -p <password>

  1. Create a new project in the OCP -
$ export PROJECT=ppc64le-isv
$ oc new-project $PROJECT
  1. Update the security constraint, as shown below -
$ oc adm policy add-scc-to-user privileged -z default -n <project name>

$ oc adm policy add-scc-to-user anyuid -z default -n <project name>
  1. Create the deployment, Update Namespace as project name which you have used in step 2, other fields could be modified if required but not mandatory
$ oc create -f deployment.yaml
  1. create the service, Update Namespace as project name, again ther fields could be modified if required but not mandatory
$ oc create -f service.yaml
  1. Expose the qgis service here our qgis service name is qgis-service
$ oc expose service qgis-service
  1. Query the route
$ oc get route
  1. The route name will have host/port filed which is the link to access the noVNC client For example
$ oc get route
NAME           HOST/PORT                                         PATH   SERVICES       PORT   TERMINATION   WILDCARD
qgis-service   qgis-service-mithunhr.apps.p1258.cecc.ihost.com          qgis-service   6080                 None

qgis-service-mithunhr.apps.p1258.cecc.ihost.com Is your route to access the application.

  1. Navigate via web browser, click the route as shown in Step 8

image

  1. Click to connect

  2. Enter password for VNC - here it is TestVNC

image

  1. you would see a sample map of Alaska loaded , You can open and work on any supported QGIS project or file

image

Maintainers of these sample dockerfile and script

Krishna Harsha Voora @krishvoor

Mithun H R @mithunhr87

Sahitya Jain @Sahityakrj

About

qgis sample docker image for ppc64le

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Shell 92.2%
  • Dockerfile 7.8%