Skip to content

Configuration

mise-server is configured via a TOML config file, environment variables, or CLI flags.

Resolution Order

Configuration is resolved in this order (highest wins):

  1. CLI flags--port 8080
  2. Environment variablesMISE_SERVER_PORT=8080
  3. Config filemise-server.toml [settings] section
  4. Hardcoded defaults

Config File

Place mise-server.toml in the working directory or pass --config /path/to/mise-server.toml:

toml
[settings]
port = 3000
bind = "0.0.0.0"
data_dir = "/data"
auth_token = "your-secret-token"
base_url = "https://mise-server.example.com"
cache_ttl = 300

# S3 storage (required)
s3_bucket = "my-cache-bucket"
s3_region = "us-east-1"
s3_prefix = "cache/"

# Optional: local disk cache in front of S3
s3_local_cache_size = 10737418240  # 10 GiB

# Optional: GitHub token for release proxying
github_token = "ghp_..."

# Per-registry upstream overrides
[settings.piers.npm]
upstream = "https://registry.npmjs.org"

[settings.piers.pypi]
upstream = "https://pypi.org"

Users & ACL

toml
[[users]]
username = "alice"
password_hash = "$argon2id$..."
role = "admin"

[[users]]
username = "ci"
token = "ci-token-value"
role = "write"

[[acl]]
user = "ci"
pattern = "npm/**"
permission = "write"

[[acl]]
user = "*"
pattern = "pypi/**"
permission = "read"

See Users & ACL for details.

Full Reference

See Settings Reference for every available setting with defaults and environment variable mappings. See Environment Variables for a quick lookup table.

Licensed under FSL-1.1-ALv2. Maintained by @jdx.