How to set up WMS server for local GeoTIFFs?

I have processed a fair amount of GeoTIFFs of Sentinel-2 imagery, which i use for tracing in areas with old or low-res imagery. Currently I’m using Mapbox Studio to supply a background, but it is limited to 5 GB of storage, (a~100x100km tile from this source is 460MB and I have dozens of them). Instead of constantly uploading the tiles whenever I need one, maybe I could host them locally, which would also allow me to allow other mappers using the service.

I followed the instructions here and here, but it’s very concise and so far I only got the OSM Carto server running. My own layer stays entirely blank, and the WMS also gives a ‘cannot load tiles’ error. Hopefully someone can give me some

I modified the example setup file to the following:

  #sets up how to make the source data available
    #srs sets the coordinate reference systems as which you want to make your data available. MapProxy reprojects the source data very well to these projections.
    srs: ['EPSG:900913','EPSG:3857']
    image_formats: ['image/jpeg', 'image/png']
      # metadata used in capabilities documents
      title: Copernicus Sentinel-2 2017
      abstract: void
        person: Your Name
        position: Technical Director
        organization: Some Company
        address: Long street
        city: Timbuktu
        postcode: 123456AD
        country: South Pole
        This service is intended for private and evaluation use only.
        The data is licensed as Creative Commons Attribution-Share Alike 2.0
      fees: 'None'

  #sets up which layers you want to make available using the services above. You can add many, but let's stick to osm data here.
  - name: osm
    title: Open Streetmap Tiles
    sources: [osm_cache] #this layer should use the osm_cache (defined below) as it's source.
  - name: sentinel-2
    title: Sentinel-2 2017
    sources: [sentinel-2]
  #setup the cache for the open streetmap tiles. This cache is used by the layer above.
    sources: [osm_tiles] #here you set what source data (defined below) you want to cache
    format: image/png
    sources: [beijing_20170309]
    format: image/jpeg
        resampling_method: nearest
     #the osm_tiles source refers to the tiles. These will be downloaded upon request (if not already cached) and served by MapProxy
     type: tile
     grid: osm_grid #the grid to use for the osm tiles. This is really important. It is specified below.
     type: tile
     url: file:///E:/Sentinel-2/Beijing_20170309_RGB.tif
     grid: osm_grid
     format: image/tiff

    #this srs and origin specify a grid that can be used elsewhere in the configuration. In this example it is used for the osm_tiles source. These settings are correct for tiles.
    #The google mercator srs is used (also called EPSG:900913), and the origin of the tiles is north-west). If you get this wrong, you might very well get an all-blue world.
    srs: EPSG:900913
    origin: nw

  #next are some global configuration options for MapProxy. They mostly explain themselves, or can be looked-up in the MapProxy docs.
    # where to store the cached images
    base_dir: './cache_data'
    # where to store lockfiles
    lock_dir: './cache_data/locks'

  # image/transformation options
      resampling_method: bilinear
      jpeg_quality: 90

Layers: should be fine, it shows up in the web interface and opens

caches: i understand that raster tiles can only be served via a cache, but otherwise it’s a bit unclear. It could be that it goes wrong at this point

sources: I pointed the URL to my local file, the documentation says this is the accepted method for serving local files. I am not sure if I need to choose a different grid than the OSM default.

Here is an example tile equivalent to the one I used:

So, can someone have a look at my configuration file to point me in the right way?

Edit: i solved it using Maptiler

(off-top and not an answer to original question)