This tool provides a rudimentary web GUI to query Sentinel-2 satellite imagery for a custom bounding box and time span which can then be downloaded as a single ZIP file. It was developed by the datacube team at EORC for agricultural scientists at HSNB.
Note that s2-batch-download.py is a standalone script that you can run directly in Python after editing the config in its first few lines, while server-worker.py is intended to be run as a daemon in a Docker container and accepts jobs via the web GUI it serves.
You'll need Node.js and Docker.
Clone this repo.
cd /path/to/repo
cd ui
npm install
npm run buildThis will create a dist folder within the ui folder, from where the static files are served that form the website that end users actually see.
cd /path/to/repo
mkdir jobsOr let it point wherever it is convenient for you (lots of gigabytes will be written there).
Add to your docker-compose.yml:
hsnb:
build:
context: ./hsnb
container_name: hsnb
volumes:
- ./hsnb/jobs:/home/hsnb/jobs
networks:
- caddyThis assumes that you cloned the repo into a folder called hsnb within the same folder as your docker-compose.yml. And it also assumes that you have a Docker network called caddy where a web server does reverse proxying. The volumes section links the jobs folder in the actual file system (the path on the left of the colon) to the jobs folder in the container's file system (the path on the right of the colon).
Add to your Caddyfile (via sudo nano /etc/caddy/Caddyfile):
hsnb.eo2cube.org {
reverse_proxy hsnb:8765
}
And update the Caddy config with docker exec -w /etc/caddy caddy caddy reload (assuming the Caddy webserver is running in a Docker container called caddy).
Then finally:
docker compose build hsnb
docker compose up hsnbChristoph Friedrich <christoph.friedrich (ät) uni-wuerzburg.de>