The docker container for StashCache can be found here. The container allows running either of the two containers (StashCache and HTCondor) that are typically needed to run a full-fledged StashCache cache server.
The Dockerfile is fairly straightforward. The baseline image is the latest CentOS 7 image. To install StashCache and Condor, we add the
epel-release and the OSG software image (in this case release 3.4 for EL7). Additionally we create the necessary directories for the certificates, StashCache cache, and Stashcache.
A generalized StashCache configuration and a simple script to run StashCache and condor are provided as well. The configuration uses several environment variables to fill in site- and instance-specific configuration parameters:
STASHCACHE_SITE_NAME: Name of the StashCache instance being deployed
STASHCACHE_RAMSIZE: Maximum RAM to be used by StashCache
STASHCACHE_SPACE_LOW_WM: Low watermark when to stop deleting data from cache
STASHCACHE_SPACE_HIGH_WM: High watermark when to start deleting data from cache
STASHCACHE_BLOCKSIZE: Increments/blocks in bytes that should be transferred
STASHCACHE_PREFETCH: Maximum number of blocks to prefetch
STASHCACHE_MONITORING_ENDPOINT: HTTP endpoint to send monitoring data