如何部署一個Geoserver及SHP數據的服務
GeoServer是一個開源的服務器,以支持展示各種GIS數據,提供各種數據服務。官方地址:
可以在上面下載直接可以運行的包,或者源代碼。
以我的Windows機器爲例子,下載後,目錄結構如下:
我們在控制檯中,運行上圖目錄中的bin目錄下的start.bat ,啓動服務器。如下圖:
服務器啓動後,可以訪問http://127.0.0.1:8080/geoserver 訪問到管理頁面。這個系統需要用戶名和密碼登陸後使用。默認用戶爲admin , 密碼爲 geoserver
以下是詳細的步驟,介紹如何準備一個數據,然後創建服務。官方提供幾個簡單的教程,地址爲: https://docs.geoserver.org/latest/en/user/gettingstarted/index.html
以下是我個人的學習
- 創建工作臺, 工作臺的主要目的是爲了方便管理一系列內容和資源,可以認爲是一個項目。也類似於Java的工作臺概念。
下圖中,名字隨便寫(我們這裏就寫study),URI也是(一般格式爲http://myserver.org/)
- 利用數據,新建一個數據存儲,類型是shape file ,下圖右側是我們已經建立好的示例
新增數據,我們這次學習,使用shp文件(這些SHP的文件在本文附件中可以下載)
選擇數據源,如下圖,數據源名稱自己填,數據目錄可以通過瀏覽按鈕,查看到位於geoserver安裝目錄下的data_dir目錄下,其中還有個data目錄,可以放你自己的數據。
關於數據目錄詳細信息如下:
- 如果沒有特殊指定,默認使用包中的,data_dir目錄
- 如果指定,在Windows下由環境變量GEOSERVER_DATA_DIR 指定
- 在Linux中,由同樣的環境變量GEOSERVER_DATA_DIR 決定。
比如:export GEOSERVER_DATA_DIR=/var/lib/geoserver_data
- 新增圖層。
個人認爲,圖層在GIS領域中有很重要的作用,我們所看到的數據內容,其實是由各種不同數據源,不同精度,不同領域的數據在單獨自己的層上,疊加而成的符合內容。
其中,最終要的讓系統自動計算,該數據源的邊界,如下圖
同時,圖層保存好後,一定要發佈。
但你發佈好後,在LayerPreview (圖層預覽)中,就可以點擊某個圖層,查看各種內容展示。如下圖:
- 圖層組
圖層組就是一組圖層,可以疊加好多個層。如我們提供的數據,其實由4層Layer, 我們可以新建一個組,名字隨便定,勾選在這個組中的層即可。如下圖。這樣做的主要目的是未來客戶端可以直接訪問這個組(同時就有了所有的層)
最終預覽效果圖,可能如下:(我這裏展示的是0層,不同的層效果不一樣,如果看層組,就會看到4個層的共同內容)
其中,從URL地址欄,我們看到服務真實地址爲:
http://127.0.0.1:8080/geoserver/study/wms?
- 以上是Geoserver服務器端的數據配置和內容。下面我們介紹如何在某些客戶端中展示這些數據。以QGIS爲一個客戶端,
QGIS的官網爲:https://www.qgis.org/en/site/ 下載安裝包後,直接可以在Windows上用。
打開QGIS軟件,在左側的面板中選擇數據源類型,右鍵點擊【new connection】,新建一個數據源,如下圖,我們利用剛纔Geoserver中新增的WMS協議的服務作爲數據源,記得URL內容就是上述的WMS服務地址?前面的內容
最終在QGIS中的展示內容如下: