How can I configure EGRESS?
# ask-ai
c
How can I configure EGRESS?
t
Thanks for reaching out, Tamaghna. I'm an AI assistant and I'm here to help. Give me a moment while I research this topic.
Hey there! To get EGRESS up and running in LiveKit, you’ll want to create a YAML configuration file with some required and optional settings. Here’s a quick rundown to help you out: Required Configuration Fields:
Copy code
# Required fields
api_key: livekit server api key
api_secret: livekit server api secret
ws_url: livekit server websocket url
redis:
  address: must be the same redis address used by your livekit server
  username: redis username
  password: redis password
  db: redis db
Optional Configuration Fields:
Copy code
# Optional fields
health_port: port for health checks
template_port: port for default templates
prometheus_port: port for metrics
logging:
  level: debug, info, warn, or error
  json: true
Storage Configuration: You can set up where your files get uploaded, like S3, Azure, or Google Cloud Storage. For example, here’s how you’d configure S3:
Copy code
storage:
  s3:
    access_key: AWS_ACCESS_KEY_ID
    secret: AWS_SECRET_ACCESS_KEY
    region: AWS_DEFAULT_REGION
    bucket: bucket to upload files to
Deployment Methods:Environment Variables: You can pass the config file using
EGRESS_CONFIG_FILE
or
EGRESS_CONFIG_BODY
. • Docker: Remember to add the
--cap-add=SYS_ADMIN
flag for Chrome sandboxing. • Helm: If you’re using Kubernetes, configure the service through Helm values. For the best experience, it’s great to have each Egress instance running with at least 4 CPUs and 4 GB of memory. If you have any questions or want me to walk you through any part, just let me know—I’m here to help! Sources: pkg/config/base.go | Self-hosting the Egress Service | LiveKit Docs | egress/values.yaml