v3.2.0 GitHub β†—

Quick Start

Get your GeoServer instance running in under 5 minutes. This guide walks you through installation, configuration, and deploying your first spatial data layer.

ℹ️ Prerequisites
Ensure you have Docker 20.10+ or Node.js 18+ installed, and an active GeoServer API key from your dashboard.

Step 1: Install the CLI

The gs CLI is the recommended way to manage GeoServer projects, deployments, and configurations.

bash
# Install globally via npm
npm install -g @geoserver/cli

# Verify installation
gs --version
v3.2.0 (stable)

Step 2: Initialize a Project

Create a new geospatial project with default configurations, layer schemas, and a local development server.

bash
# Create and enter project directory
mkdir my-geo-project && cd my-geo-project

# Initialize with interactive wizard
gs init --region us-east-1 --api-key $GS_API_KEY

βœ“ Project scaffolded successfully
βœ“ Default WMS/WFS endpoints configured
βœ“ Ready to run.

Step 3: Start the Development Server

Spin up a local instance with hot-reloading, mock spatial datasets, and a built-in dashboard.

bash
gs dev --port 8080

🌍 GeoServer v3.2.0 started
πŸ“‘ Local:  http://localhost:8080
πŸ“‘ Network: http://192.168.1.42:8080
πŸ—ΊοΈ  Dashboard: http://localhost:8080/admin
⚠️ Note
The dev server uses an in-memory spatial database. For persistent data, mount a PostGIS volume or configure a remote database in gs.config.yml.

Step 4: Add Your First Layer

Publish a GeoJSON file or connect to an existing PostGIS table using the CLI or REST API.

bash
# Publish a local GeoJSON
gs layers add ./data/cities.geojson \
  --name world-cities \
  --style point-cluster

βœ“ Layer 'world-cities' published
πŸ”— WMS: /geoserver/web/wms?layers=world-cities

Step 5: Verify & Access

Open your browser or use curl to verify the service is responding correctly.

bash
curl http://localhost:8080/api/v1/health

{
  "status": "ok",
  "version": "3.2.0",
  "layers": 1,
  "uptime": "00:04:12",
  "endpoints": {
    "wms": "/geoserver/web/wms",
    "wfs": "/geoserver/web/wfs",
    "rest": "/api/v1"
  }
}
βœ… You're ready!
Your GeoServer instance is live. Visit http://localhost:8080 to explore the interactive map dashboard or proceed to configure authentication and caching.