MapProxy: Difference between revisions

From Wildsong
Jump to navigationJump to search
Brian Wilson (talk | contribs)
Brian Wilson (talk | contribs)
Line 41: Line 41:
== Multiple services ==
== Multiple services ==


I want several groups of services, for example,
I want several groups of services, for example, a service called "or-ex"


  Oregon Explorer
  Oregon Explorer
Line 48: Line 48:
     etc
     etc


and  
and one called "dogami"


   DOGAMI
   DOGAMI
Line 54: Line 54:
     BE hillshade
     BE hillshade


so that I can group things in maps.
so that I can group things in maps. I think the layout is supposed to be like this:


I want separate files so that I can manage each service separately but share common settings too.
config/
 
  mapproxy.yaml -- default example not used in this case
mapproxy.yaml -- default example
  globals.yaml -- included from each file in services
cc.yaml -- mapproxy.yaml that includes these:
   services/
   astoria-aerials.yaml
    or-ex.yaml -- creates the service http://hostname/or-ex
  county-aerials.yaml
    dogami.yaml -- creates the service http://hostname/dogami
   
   
[[Category: GIS]]
[[Category: GIS]]

Revision as of 00:19, 6 December 2019

There are some map services that are unreliable because they are unreachable sometimes for days. I think I can solve this problem using MapProxy though.

There is a cache engine built into GeoServer, I write about it here: GeoWebCache, I have tried to make it work but keep coming back to MapProxy because it's easier to set up.

I started to install mapproxy directly on the host then realized yet again I'd be making a bunch of changes to the host just for this one app.

I am developing a relatively portable Docker project of my own now, I want it to run on Windows but right now it's targeted at Linux because it's easier.

I found a Docker containing miniconda and am using that right now.

My github repository is https://github.com/wildsong/docker-mapproxy. The project contains more detailed notes.

I use Conda as the package management tool because it can install things on Windows that I need, notably the libgeos and libproj binaries.

Storage

I am trying to use CouchDB as the data store, because it makes sense to use NoSQL for this. MapProxy supports other back ends, including files.

I have an idea that I can run MapProxy in Windows and CouchDB on some other machine to split up the workload.

Compose

I started off using Docker Compose to start both MapProxy and CouchDB and to link the containers together. It's all working smoothly now so I will move on to Docker Swarm soon.

Currently it works on two different Linux servers, cc-testmaps and bellman.

It's not behind a proxy right now, I just access it on port 8080 on the host network.

Oregon Explorer service glitch

I figured out trial and error that two of the OE services won't deliver usable data on WMS, only on WMTS. Something to be aware of! I will probably drop them a line some day and ask why it's broken.

Multiple services

I want several groups of services, for example, a service called "or-ex"

Oregon Explorer
   OSIP2018
   NAIP2016
   etc

and one called "dogami"

 DOGAMI
   hillshade
   BE hillshade

so that I can group things in maps. I think the layout is supposed to be like this:

config/
  mapproxy.yaml -- default example not used in this case
  globals.yaml -- included from each file in services
  services/
    or-ex.yaml -- creates the service http://hostname/or-ex
    dogami.yaml -- creates the service http://hostname/dogami