
roshkhatri/valkeyValkey是一款高性能数据结构服务器,主要用于处理键值(key/value)工作负载。它支持多种原生数据结构,并提供可扩展的插件系统,用于添加新的数据结构和访问模式。
8.1.3, 8.1, 8, latest, 8.1.3-bookworm, 8.1-bookworm, 8-bookworm, bookworm8.1.3-alpine, 8.1-alpine, 8-alpine, alpine, 8.1.3-alpine3.22, 8.1-alpine3.22, 8-alpine3.22, alpine3.228.0.5, 8.0, 8.0.5-trixie, 8.0-trixie8.0.5-alpine, 8.0-alpine, 8.0.5-alpine3.22, 8.0-alpine3.227.2.10, 7.2, 7, 7.2.10-bookworm, 7.2-bookworm, 7-bookworm7.2.10-alpine, 7.2-alpine, 7-alpine, 7.2.10-alpine3.22, 7.2-alpine3.22, 7-alpine3.229.0.0-rc2, 9.0, 9.0.0-rc2-trixie, 9.0-trixie9.0.0-rc2-alpine, 9.0-alpine, 9.0.0-rc2-alpine3.22, 9.0-alpine3.22unstable, unstable-bookwormunstable-alpine, unstable-alpine3.21为便于通过Docker网络从其他容器访问Valkey,默认关闭了"保护模式"(Protected mode)。这意味着如果通过-p参数将端口暴露到主机外部,任何人都可无密码访问实例。强烈建议:若需将Valkey暴露到公网,必须通过配置文件设置密码。
相关安全文档:
bashdocker run --name some-valkey -d valkey/valkey
Valkey支持多种持久化策略,以下示例配置为每60秒且至少1次写入操作时保存快照,并降低日志级别:
bashdocker run --name some-valkey -d valkey/valkey valkey-server --save 60 1 --loglevel warning
数据默认存储在VOLUME /data中,可通过以下方式持久化:
--volumes-from some-volume-container挂载数据卷-v /host/dir:/data挂载主机目录(需确保目录权限正确)valkey-cli连接实例在同一网络中连接Valkey实例(假设实例名为some-valkey,网络名为some-network):
bashdocker run -it --network some-network --rm valkey/valkey valkey-cli -h some-valkey
使用VALKEY_EXTRA_FLAGS环境变量传递valkey-server启动参数,无需覆盖默认CMD:
bashdocker run --env VALKEY_EXTRA_FLAGS='--save 60 1 --loglevel warning' valkey/valkey
创建包含自定义valkey.conf的镜像:
dockerfileFROM valkey/valkey COPY valkey.conf /usr/local/etc/valkey/valkey.conf CMD ["valkey-server", "/usr/local/etc/valkey/valkey.conf"]
直接挂载主机目录中的配置文件:
bashdocker run -v /host/valkey/conf:/usr/local/etc/valkey --name myvalkey valkey/valkey valkey-server /usr/local/etc/valkey/valkey.conf
注意:挂载的目录需可写,Valkey可能需要创建或修改配置文件。
Valkey支持通过Systemd通知机制,确保依赖服务在Valkey就绪后启动。在Quadlet服务文件中配置:
systemd[Container] Image=docker.io/valkey/valkey:latest Exec=valkey-server --supervised systemd Notify=true
创建docker-compose.yml快速部署带持久化的Valkey服务:
yamlversion: '3.8' services: valkey: image: valkey/valkey:latest container_name: valkey-service restart: always ports: - "6379:6379" # 暴露默认端口 environment: - VALKEY_EXTRA_FLAGS=--save 60 1 --loglevel warning # 持久化和日志配置 volumes: - valkey-data:/data # 数据持久化卷 networks: - valkey-network volumes: valkey-data: # 命名卷,数据持久化到宿主机 networks: valkey-network: # 自定义网络,隔离服务 driver: bridge
启动服务:
bashdocker-compose up -d
Valkey镜像提供多种变体,适用于不同场景:
valkey/valkey:<version>(默认变体)8.1.3-bookworm),建议显式指定以避免依赖变更valkey/valkey:<version>-alpine(轻量级变体)8.1.3-alpine3.22),需注意部分依赖musl的兼容性注意:Alpine变体可能缺少部分系统工具(如
bash、git),需在Dockerfile中额外安装。
镜像中软件的许可证信息参见Valkey官方COPYING文件。
Docker镜像可能包含基础系统(如Debian/Alpine)及依赖软件,这些组件可能具有独立许可证。使用前请确保遵守所有包含软件的许可证要求。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务