National Poetry Month

    mbtiles-server
    TypeScript icon, indicating that this package has built-in type declarations

    3.3.4 • Public • Published

    MBTiles Server

    Build Status Coverage Status npm version MIT licensed

    Standard - JavaScript Style Guide

    Provides a compatible WMTS Tile Server from MBTiles.

    Install

    $ npm install -g mbtiles-server

    Quickstart

    $ mbtiles-server --cache /Users/mac/mbtiles --verbose --port 3000
    MBTiles Server Service
     
      cache:         /Users/mac/mbtiles
      protocol:      http
      port:          3000
      domain:        localhost
      verbose:       true

    Benchmark

    • 1 Active User => 400 requests/min
    • 1 Passive User => 50 requests/min
    Requests Response Time
    1 33.460ms
    10 45.223ms
    100 374.217ms
    1K 2.698s
    10K 25.457s

    Total 24,000 requests / min

    Using mbtiles-server you could easily sustain 60 active users and up to 480 passive users. These tests were done on the server locally, network traffic and switches could slow down these results significantly.

    CLI Help

    For any additional help using the CLI, use the --help flag.

      Provides a compatible WMTS Tile Server from MBTiles.
     
      Usage
        $ mbtiles-server
     
      Options
        --cache           [~/mbtiles] Cache
        --protocol        [http] Protocol
        --port            [5000] Port
        --domain          [localhost] Domain
        --verbose         [false] Verbose output
        --sslkey          [~/mbtiles/server.key] Path to the file certification (.key). For https protocol only  
        --sslcert         [~/mbtiles/server.cert] Path to the file certification (.cert). For https protocol only
      
      Examples
        $ mbtiles-server --cache /Users/mac/mbtiles --port 5000 --verbose

    Environment Variables

    Environment variables can be defined instead of entering your options via the CLI.

    • MBTILES_SERVER_CACHE
    • MBTILES_SERVER_PROTOCOL
    • MBTILES_SERVER_PORT
    • MBTILES_SERVER_DOMAIN
    • MBTILES_SERVER_VERBOSE
    • MBTILES_SERVER_SSL_KEY
    • MBTILES_SERVER_SSL_CERT

    Docker

    A Dockerfile is provided for easy Docker deployment

    $ docker build -t mbtiles-server .
    $ docker run --rm -it \
      -p 5000:5000 \
      -v ~/mbtiles/:/root/mbtiles \
      mbtiles-server

    Start containers automatically

    https://docs.docker.com/engine/admin/host_integration/

    $ docker run -d \
      --name mbtiles-server \
      -p 5000:5000 \
      -v ~/mbtiles/:/root/mbtiles \
      mbtiles-server

    WMTS

    The goal of providing a WMTS enabled service is to be performance oriented and scalable. Therefore, servers must be able to return tiles quickly. A good way to achieve that is to use locally stored pre-rendered tiles that will not require any image manipulation or geo-processing.

    API

    Server

    Parameters

    • options [string] Server Options
      • options.cache [string] CACHE file path (optional, default ~/mbtiles)
      • options.domain [string] URL Domain (optional, default 'localhost')
      • options.port [string] URL Port (optional, default 5000)

    Examples

    server({cache: '/Users/mac/mbtiles', port: 5000, verbose: true})

    Install

    npm i mbtiles-server

    DownloadsWeekly Downloads

    27

    Version

    3.3.4

    License

    MIT

    Unpacked Size

    398 kB

    Total Files

    18

    Last publish

    Collaborators

    • deniscarriere