## Required: path to store pict-rs database # environment variable: PICTRS_PATH path = './data' ## Optional: pict-rs binding address # environment variable: PICTRS_ADDR # default: 0.0.0.0:8080 addr = '0.0.0.0:8080' ## Optional: format to transcode all uploaded images # environment variable: PICTRS_IMAGE_FORMAT # valid options: 'jpeg', 'png', 'webp' # default: empty # # Not specifying image_format means images will be stored in their original format # This does not affect gif or mp4 uploads image_format = 'jpeg' ## Optional: permitted image processing filters # environment variable: PICTRS_FILTERS # valid options: 'identity', 'thumbnail', 'resize', 'crop', 'blur' # default: empty # # Not specifying filters implies all filters are permitted filters = ['identity', 'thumbnail', 'resize', 'crop', 'blur'] ## Optional: image bounds # environment variable: PICTRS_MAX_FILE_SIZE # default: 40 max_file_size = 40 # in Megabytes # environment variable: PICTRS_MAX_IMAGE_WIDTH # default: 10,000 max_image_width = 10_000 # in Pixels # environment variable: PICTRS_MAX_IMAGE_HEIGHT # default: 10,000 max_image_height = 10_000 # in Pixels # environment variable: PICTRS_MAX_IMAGE_AREA # default: 40,000,000 max_image_area = 40_000_000 # in Pixels ## Optional: skip image validation on the import endpoint # environment variable: PICTRS_SKIP_VALIDATE_IMPORTS # default: false skip_validate_imports = false ## Optional: enable tokio-console and set the event buffer size # environment variable: PICTRS_CONSOLE_BUFFER_CAPACITY # default: empty # # NOTE: this is the number of _events_ to buffer, not the number of bytes. In reality, the amount of # RAM used will be significatnly larger (in bytes) than the buffer capacity (in events) # # When set, tokio-console can connect to the pict-rs service on port 6669 # # Configure your container to expose the console port # ``` # # docker-compose.yml # version: '3.3' # # services: # pictrs: # image: asonix/pictrs:v0.3.0-beta.6 # ports: # - "127.0.0.1:8080:8080" # - "127.0.0.1:6669:6669" # this is the line that exposes console # restart: always # volumes: # - ./volumes/pictrs:/mnt # ``` # # Connect from console # ``` # $ tokio-console localhost 6669 # ``` console_buffer_capacity = 102_400 # 102_400 (or 1024 * 100) is the default size used by console-subscriber ## Optional: shared secret for internal endpoints # environment variable: PICTRS_API_KEY # default: empty # # Not specifying api_key disables internal endpoints api_key = 'API_KEY' ## Optional: url for exporting otlp traces # environment variable: PICTRS_OPENTELEMETRY_URL # default: empty # # Not specifying opentelemetry_url means no traces will be exported opentelemetry_url = 'http://localhost:4317/' ## Optional: the data repository to use # environment variable: PICTRS_REPO # default: 'sled' # available options: 'sled' repo = 'sled' ## Optional: the file storage to use # environment variable: PICTRS_STORE # default: 'filesystem' # available options: 'filesystem', 'object_storage' store = 'filesystem' ## Optional: Sled store configration definition [sled] ## Optional: set sled's cache capacity to a given number of bytes # environment variable: PICTRS_SLED__SLED_CACHE_CAPACITY # default: 67_108_864 (1024 * 1024 * 64) e.g. 64MB # # Increasing this value can improve performance by keeping more of the database in RAM sled_cache_capacity = 67_108_864 # in bytes ## Optional: Filesystem storage configuration [filesystem_storage] ## Optional: set the path for pict-rs filesystem file storage # environment variable: PICTRS_FILESYSTEM_STORAGE__FILESYSTEM_STORAGE_PATH # default '${path}/files' filesystem_storage_path = 'data/files' ## Optional: Object Storage configuration [object_storage] ## Required: bucket name # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_BUCKET_NAME object_store_bucket_name = 'pict-rs' ## Required: bucket region # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_REGION # # can also be endpoint of local s3 store, e.g. 'http://minio:9000' object_store_region = 'eu-central-1' ## Optional: bucket access key # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_ACCESS_KEY # default: empty object_store_access_key = '09ODZ3BGBISV4U92JLIM' ## Optional: bucket secret key # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_SECRET_KEY # default: empty object_store_secret_key = 'j35YE9RrxhBP0dpiD5mmdXRXvPkEJR4k6zK12q3o' ## Optional: bucket security token # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_SECURITY_TOKEN # default: empty object_store_security_token = 'SECURITY_TOKEN' ## Optional: bucket session token # environment variable: PICTRS_OBJECT_STORAGE__OBJECT_STORE_SESSION_TOKEN # default: empty object_store_session_token = 'SESSION_TOKEN'