How to setup the geospatial stack for Clowder.
Requirements
- Docker
- Core Clowder setup (running in Docker or on host)
Clowder Running Inside Docker
- Download docker-compose.geo.yml
- Setup geoserver
- Start geoserver with docker-compose -f docker-compose.geo.yml up geoserver
- Open http://localhost:8081/geoserver
- Change admin password
- Stop geoserver
- Depending on your Docker setup, the default environmental variables should work. If not you can modify them in a .env file. In the case of Clowder is running on host clowderhost.net, the .env file will looks something like this (fix passwords):
- Run docker-compose -f docker-compose.geo.yml up
Clowder Running Outside Docker
- Download docker-compose.geo.yml
- You will need to expose the Geoserver port to the host. We recommend you keep this behind a firewall and only make it accessible to the host running the Clowder webapp.
- Add the following to the geoserver service entry in docker-compose.geo.yml:
- ports:
- 8081:8080
- ports:
- Add the following to the geoserver service entry in docker-compose.geo.yml:
- Setup geoserver
- Start geoserver with docker-compose -f docker-compose.geo.yml up geoserver
- Open http://localhost:8081/geoserver
- Change admin password
- Stop geoserver
- Create .env file and set the appropriate env variables in it. For example if the Clowder core services are running on host clowderhost.net, the .env file will looks something like this (fix passwords):
.env
RABBITMQ_URI=amqp://guest:guest@clowderhost.net:5672/%2F REGISTRATION_ENDPOINTS=http://clowderhost.net:9000/clowder/api/extractors?key=xxx PROXY_ON=true PROXY_HOST=http://clowderhost.net:9000/clowder/ PROXY_URL=http://clowderhost.net:9000/clowder/api/proxy/ GEOSERVER_USERNAME=admin GEOSERVER_PASSWORD=geoserver GEOSERVER_WORKSPACE= GEOSERVER_URL=http://geoserver:8080/geoserver/ PYCSW_URL=http://pycswserver:8000/pycsw/
- Add a proxy entry to the Clowder custom.conf file:
custom.conf
clowder.proxy { geoserver="http://localhost:8081/geoserver", authtest="http://username:12345@httpbin.org/basic-auth/username/12345" }
- Run docker-compose -f docker-compose.geo.yml up