Documentation
¶
Index ¶
- type RedisStorage
- func (RedisStorage) CaddyModule() caddy.ModuleInfo
- func (rs *RedisStorage) CertMagicStorage() (certmagic.Storage, error)
- func (rs *RedisStorage) Cleanup() error
- func (rs RedisStorage) Delete(ctx context.Context, key string) error
- func (rs RedisStorage) Exists(ctx context.Context, key string) bool
- func (rs RedisStorage) List(ctx context.Context, dir string, recursive bool) ([]string, error)
- func (rs RedisStorage) Load(ctx context.Context, key string) ([]byte, error)
- func (rs *RedisStorage) Lock(ctx context.Context, name string) error
- func (rs *RedisStorage) Provision(ctx caddy.Context) error
- func (rs *RedisStorage) Repair(ctx context.Context, dir string) error
- func (rs RedisStorage) Stat(ctx context.Context, key string) (certmagic.KeyInfo, error)
- func (rs RedisStorage) Store(ctx context.Context, key string, value []byte) error
- func (rs RedisStorage) String() string
- func (rs *RedisStorage) Unlock(ctx context.Context, name string) error
- func (rs *RedisStorage) UnmarshalCaddyfile(d *caddyfile.Dispenser) error
- type StorageData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type RedisStorage ¶
type RedisStorage struct { // ClientType specifies the Redis client type. Valid values are "cluster" or "failover" ClientType string `json:"client_type"` // Address The full address of the Redis server. Example: "127.0.0.1:6379" // If not defined, will be generated from Host and Port parameters. Address []string `json:"address"` // Host The Redis server hostname or IP address. Default: "127.0.0.1" Host []string `json:"host"` // Host The Redis server port number. Default: "6379" Port []string `json:"port"` // DB The Redis server database number. Default: 0 DB int `json:"db"` // Timeout The Redis server timeout in seconds. Default: 5 Timeout string `json:"timeout"` // Username The username for authenticating with the Redis server. Default: "" (No authentication) Username string `json:"username"` // Password The password for authenticating with the Redis server. Default: "" (No authentication) Password string `json:"password"` // MasterName Only required when connecting to Redis via Sentinal (Failover mode). Default "" MasterName string `json:"master_name"` // KeyPrefix A string prefix that is appended to Redis keys. Default: "caddy" // Useful when the Redis server is used by multiple applications. KeyPrefix string `json:"key_prefix"` // EncryptionKey A key string used to symmetrically encrypt and decrypt data stored in Redis. // The key must be exactly 32 characters, longer values will be truncated. Default: "" (No encryption) EncryptionKey string `json:"encryption_key"` // Compression Specifies whether values should be compressed before storing in Redis. Default: false Compression bool `json:"compression"` // TlsEnabled controls whether TLS will be used to connect to the Redis // server. False by default. TlsEnabled bool `json:"tls_enabled"` // TlsInsecure controls whether the client will verify the server // certificate. See `InsecureSkipVerify` in `tls.Config` for details. True // by default. // https://pkg.go.dev/crypto/tls#Config TlsInsecure bool `json:"tls_insecure"` // TlsServerCertsPEM is a series of PEM encoded certificates that will be // used by the client to validate trust in the Redis server's certificate // instead of the system trust store. May not be specified alongside // `TlsServerCertsPath`. See `x509.CertPool.AppendCertsFromPem` for details. // https://pkg.go.dev/crypto/x509#CertPool.AppendCertsFromPEM TlsServerCertsPEM string `json:"tls_server_certs_pem"` // TlsServerCertsPath is the path to a file containing a series of PEM // encoded certificates that will be used by the client to validate trust in // the Redis server's certificate instead of the system trust store. May not // be specified alongside `TlsServerCertsPem`. See // `x509.CertPool.AppendCertsFromPem` for details. // https://pkg.go.dev/crypto/x509#CertPool.AppendCertsFromPEM TlsServerCertsPath string `json:"tls_server_certs_path"` // RouteByLatency Route commands by latency, only used in Cluster mode. Default: false RouteByLatency bool `json:"route_by_latency"` // RouteRandomly Route commands randomly, only used in Cluster mode. Default: false RouteRandomly bool `json:"route_randomly"` // contains filtered or unexported fields }
RedisStorage implements a Caddy storage backend for Redis It supports Single (Standalone), Cluster, or Sentinal (Failover) Redis server configurations.
func (RedisStorage) CaddyModule ¶
func (RedisStorage) CaddyModule() caddy.ModuleInfo
func (*RedisStorage) CertMagicStorage ¶
func (rs *RedisStorage) CertMagicStorage() (certmagic.Storage, error)
func (*RedisStorage) Cleanup ¶
func (rs *RedisStorage) Cleanup() error
func (*RedisStorage) Provision ¶
func (rs *RedisStorage) Provision(ctx caddy.Context) error
Provision module function called by Caddy Server
func (RedisStorage) String ¶
func (rs RedisStorage) String() string
func (*RedisStorage) Unlock ¶
func (rs *RedisStorage) Unlock(ctx context.Context, name string) error
func (*RedisStorage) UnmarshalCaddyfile ¶
func (rs *RedisStorage) UnmarshalCaddyfile(d *caddyfile.Dispenser) error
Click to show internal directories.
Click to hide internal directories.