## 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: set sled's cache capacity to a given number of bytes # environment variable: PICTRS_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: 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: store definition # default store: file_store # # Not specifying a store means a file_store will be used with the top-level pict-rs' path [store] type = "file_store" ## Example file store # [store] # # # environment variable: PICTRS_STORE__TYPE # type = 'file_store' # # # Optional: file path # # environment variable: PICTRS_STORE__PATH # # default: empty # # # # Not specifying path means pict-rs' top-level `path` config is used # path = './data' ## Example s3 store # [store] # # # environment variable: PICTRS_STORE__TYPE # type = 's3_store' # # # Required: bucket name # # environment variable: PICTRS_STORE__BUCKET_NAME # bucket_name = 'rust_s3' # # # Required: bucket region # # environment variable: PICTRS_STORE__REGION # # # # can also be endpoint of local s3 store, e.g. 'http://minio:9000' # region = 'eu-central-1' # # # Optional: bucket access key # # environment variable: PICTRS_STORE__ACCESS_KEY # # default: empty # access_key = 'ACCESS_KEY' # # # Optional: bucket secret key # # environment variable: PICTRS_STORE__SECRET_KEY # # default: empty # secret_key = 'SECRET_KEY' # # # Optional: bucket security token # # environment variable: PICTRS_STORE__SECURITY_TOKEN # # default: empty # security_token = 'SECURITY_TOKEN' # # # Optional: bucket session token # # environment variable: PICTRS_STORE__SESSION_TOKEN # # default: empty # session_token = 'SESSION_TOKEN'