GeoServer is an open source software server written in Java that allows users to share and edit geospatial data. Designed for interoperability, it publishes data from any major spatial data source using open standards.
GeoServer implements industry standard Open Geospatial Consortium (OGC) protocols such as
- Web Feature Service (WFS)
- Web Map Service (WMS)
- Web Coverage Service (WCS).
- OGC Web Services (OWS) services
Additional formats and publication options are available as extensions including Web Processing Service (WPS), and Web Map Tile Service (WMTS).
Getting started
GeoServer has a browser-based web administration interface application used to configure all aspects of GeoServer, from adding and publishing data to changing service settings.
Access
The web admin interface is accessed via a web browser at: http://<host>:<port>/geoserver
For a default installation on a server the link is: http://localhost:8080/geoserver
Log In
The default administration credentials are:
- User name: admin
- Password: geoserver
Data management
GeoServer connects to and publishes data from a wide variety of sources. This section will discuss how to use the GeoServer web interface to accomplish most common tasks, along with the different data formats served by GeoServer.
Data settings
Vector data
Raster data
- GeoTIFF
- GTOPO30
- WorldImage
- ImageMosaic
- GeoPackage
- ArcGrid
- GDAL Image Formats
- Oracle Georaster
- Postgis Raster
- ImagePyramid
- Image Mosaic JDBC
- Custom JDBC Access for image data
- Coverage Views
Databases
- PostGIS
- H2
- B2
- MySQL
- Oracle
- Microsoft SQL Server and SQL Azure
- Teradata
- Database Connection Pooling
- JNDI
- SQL Views
- Controlling feature ID generation in spatial databases
- Custom SQL session start/stop scripts
Cascaded service data
- External Web Feature Server
- Cascaded Web Feature Service Stored Queries
- External Web Map Server
- External Web Map Tile Server
Application schemas
GeoServer provides support for a broad selection of simple feature data stores, including property files, shapefiles, and JDBC data stores such as PostGIS and Oracle Spatial. The app-schema module takes one or more of these simple feature data stores and applies a mapping to convert the simple feature types into one or more complex feature types conforming to a GML application schema.
- Complex Features
- Installation
- WFS Service Settings
- Configuration
- Mapping File
- Application Schema Resolution
- Supported GML Versions
- Secondary Namespaces
- CQL functions
- Property Interpolation
- Data Stores
- Feature Chaining
- Polymorphism
- Data Access Integration
- WMS Support
- WFS 2.0 Support
- Joining Support For Performance
- Tutorial
- MongoDB Tutorial
- Apache Solr Tutorial
Styling
- Styles
- SLD Styling
- Generating SLD styles with QGIS
- CSS Styling
- YSLD Styling
- MBStyle Styling
- Styling Workshop
Services
- WMS, Web Map Service
- WFS, Web Feature Service
- WCS, Web Coverage Service
- WPS, Web Processing Service
- CSW, Catalog Services for the Web
Filtering
- in WMS requests, to select which features should be displayed on a map
- in WFS requests, to specify the features to be returned
- in SLD documents, to apply different symbolization to features on a thematic map.
- Supported filter languages
- Filter Encoding Reference
- ECQL Reference
- Filter functions
- Filter Function Reference
Server configuration
- Status
- Contact Information
- Global Settings
- Image Processing
- Raster Access
- REST Configuration
- Advanced log configuration
- Coordinate Reference System Handling
- Virtual Services
- Demos
- Tools
GeoServer data directory
The GeoServer data directory is the location in the file system where GeoServer stores its configuration information.
The configuration defines what data is served by GeoServer, where it is stored, and how services interact with and serve the data. The data directory also contains a number of support files used by GeoServer for various purposes.
For production use, it is recommended to define an external data directory (outside the application) to make it easier to upgrade. The Setting the data directory location section describes how to configure GeoServer to use an existing data directory.
- Data directory default location
- Setting the data directory location
- Structure of the data directory
- Migrating a data directory between versions
- Parameterize catalog settings
Running in a production environment
GeoServer is geared towards many different uses, from a simple test server to the enterprise-level data server. While many optimizations for GeoServer are set by default, here are some extra considerations to keep in mind when running GeoServer in a production environment.
- Java Considerations
- Container Considerations
- Configuration Considerations
- Data Considerations
- Linux init scripts
- Other Considerations
- Troubleshooting
- Checking WFS requests
- Leveraging GeoServer own log
- Logging service requests
- Using JDK tools to get stack and memory dumps
- XStream
- Make cluster nodes identifiable from the GUI
REST
GeoServer provides a RESTful interface through which clients can retrieve information about an instance and make configuration changes. Using the REST interface’s simple HTTP calls, clients can configure GeoServer without needing to use the Web administration interface.
Operations on resources are implemented with the standard primitives of HTTP: GET to read; and PUT, POST, and DELETE to write changes. Each resource is represented as a URL, such as http://GEOSERVER_HOME/rest/workspaces/topp
.
- API
- Examples
- About
- Fonts
- Layer groups
- Layers
- Security
- Styles
- Workspaces
- Stores
- Uploading a new image mosaic
- Updating an image mosaic contents
- Listing image mosaic details
- Removing image mosaic granules
- Uploading an empty mosaic
- Uploading an app-schema mapping file
- Listing app-schema store details
- Uploading a new app-schema mapping configuration file
- Uploading multiple app-schema mapping files
- Cleaning schemas on internal MongoDB stores
Security
- Security settings
- Role system
- Authentication
- Passwords
- Root account
- Service Security
- OGC Web Services (OWS) services
- REST services
- Layer security
- REST Security
- Disabling security
- Tutorials
GeoWebCache
GeoWebCache is a tiling server. It runs as a proxy between a map client and map server, caching (storing) tiles as they are requested, eliminating redundant request processing and thus saving large amounts of processing time. GeoWebCache is integrated with GeoServer, though it is also available as a standalone product for use with other map servers.
- GeoWebCache settings
- Using GeoWebCache
- Configuration
- Seeding and refreshing
- HTTP Response Headers
- GeoWebCache REST API
- Troubleshooting
- Grid misalignment
- Direct WMS integration
Extensions
Extensions are modules that add functionality to GeoServer. They are installed as add-ons to the base GeoServer installation.
- Key authentication module
- Control flow module
- DXF OutputFormat for WFS and WPS PPIO
- Excel WFS Output Format
- GRIB
- Imagemap
- Importer
- INSPIRE
- JP2K Plugin
- libjpeg-turbo Map Encoder Extension
- Monitoring
- NetCDF
- NetCDF Output Format
- OGR based WFS Output Format
- OGR based WPS Output Format
- GeoServer Printing Module
- Cross-layer filtering
- Vector Tiles
- XSLT WFS output format module
- Web Coverage Service 2.0 Earth Observation extensions
- MongoDB Data Store
- SLD REST Service
- Geofence Plugin
- Geofence Internal Server
Community modules
- ArcSDE
- Authentication with OAuth2
- Authentication with Keycloak
- Backup and Restore Documentation
- Catalog Services for the Web (CSW) - ISO Metadata Profile
- DDS/BIL(World Wind Data Formats) Extension
- Dynamic colormap generation
- Elasticsearch data store
- GDAL based WCS Output Format
- GeoMesa data store
- GeoPackage Extension
- GeoStyler Extension
- GeoServer Task Manager
- GHRSST NetCDF output
- GWC Azure BlobStore plugin
- GWC Distributed Caching community module
- GWC S3 BlobStore plugin
- GWC SQLite Plugin
- Importer JDBC storage
- JDBCConfig
- JDBCStore
- JMS based Clustering
- JSON-LD Extension
- MapML
- MBTiles Extension
- Metadata
- Monitoring Hibernate storage
- ncWMS WMS extensions support
- Notification community module Plugin Documentation
- NSG Profile
- OGC API Extension
- OGR datastore
- GSR Extension
- OpenSearch for EO
- Parameters Extractor
- PGRaster
- Quality of Service and Experience Module (QoSE)
- S3 Support for GeoTiff
- SAMLv2 Authentication Filter
- SAP HANA
- Scripting
- SOLR data store
- WFS FlatGeobuf output format
- WMTS Multidimensional
- WPS download community module
- WPS Remote community module