Files
at-container-registry/config/config.yml
T

58 lines
1.4 KiB
YAML

version: 0.1
log:
level: info
formatter: text
fields:
service: atcr-appview
# Storage is handled by external services:
# - Manifests/Tags -> ATProto PDS (user's personal data server)
# - Blobs/Layers -> Hold service (default or BYOS)
# The AppView should be stateless with no local storage
#
# NOTE: The storage section below is required for distribution config validation
# but is NOT actually used - all blob operations are routed through hold service
storage:
inmemory: {}
http:
addr: :5000
headers:
X-Content-Type-Options: [nosniff]
debug:
addr: :5001
middleware:
registry:
# Name resolution middleware
- name: atproto-resolver
options:
# Default hold service for blob storage
# Users without their own hold will use this endpoint
default_storage_endpoint: http://atcr-hold:8080
# Authentication - all endpoints on port 5000
auth:
token:
# Token service realm (where Docker gets tokens)
realm: http://127.0.0.1:5000/auth/token
service: atcr.io
issuer: atcr.io
expiration: 1800 # 30 minutes (in seconds)
# Certificate bundle for validating JWTs
rootcertbundle: /var/lib/atcr/auth/private-key.crt
# Private key for signing JWTs (used by custom auth handlers)
privatekey: /var/lib/atcr/auth/private-key.pem
# Token expiration in seconds (5 minutes)
expiration: 300
# Health check
health:
storagedriver:
enabled: true
interval: 10s
threshold: 3