Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏

第 34 章 valkey

目录

34.1. 安装 valkey
34.1.1. dnf 安装
34.1.2. docker 安装
34.2. 配置 valkey
34.2.1. listen 地址配置
34.2.2. 设置密码
34.3. valkey-cli
34.3.1. Valkey
34.4. 客户端库

https://valkey.io

34.1. 安装 valkey

34.1.1. dnf 安装

			
[root@netkiller ~]# dnf install valkey
			
			

查看rpm包中有哪些文件

			
[root@netkiller ~]# rpm -ql valkey
/etc/logrotate.d/valkey
/etc/valkey
/etc/valkey/sentinel.conf
/etc/valkey/valkey.conf
/usr/bin/valkey-benchmark
/usr/bin/valkey-check-aof
/usr/bin/valkey-check-rdb
/usr/bin/valkey-cli
/usr/bin/valkey-sentinel
/usr/bin/valkey-server
/usr/lib/.build-id
/usr/lib/.build-id/42
/usr/lib/.build-id/42/a8aee490e5ec6438772608eafc18a9600dd01a
/usr/lib/.build-id/d2
/usr/lib/.build-id/d2/4453032dfbeade7ff904df6713395537cf5a33
/usr/lib/.build-id/ea
/usr/lib/.build-id/ea/b291c461344003aa06274d037311b702a48a29
/usr/lib/systemd/system/valkey-sentinel.service
/usr/lib/systemd/system/valkey.service
/usr/lib/sysusers.d/valkey.conf
/usr/lib/tmpfiles.d/valkey.conf
/usr/lib64/valkey
/usr/lib64/valkey/modules
/usr/share/licenses/valkey
/usr/share/licenses/valkey/COPYING
/usr/share/licenses/valkey/COPYING-hdrhistogram
/usr/share/licenses/valkey/COPYING-hiredis-BSD-3-Clause
/usr/share/licenses/valkey/COPYING-jemalloc
/usr/share/licenses/valkey/COPYRIGHT-lua
/usr/share/licenses/valkey/LICENSE-fpconv
/usr/share/licenses/valkey/LICENSE-hdrhistogram
/var/lib/valkey
/var/log/valkey
/var/run/valkey			
			
			

启动 valkey

			
[root@netkiller ~]# systemctl enable valkey.service
Created symlink /etc/systemd/system/multi-user.target.wants/valkey.service → /usr/lib/systemd/system/valkey.service.
[root@netkiller ~]# systemctl start valkey.service
			
			

34.1.2. docker 安装

			
[root@development ~]# docker pull valkey/valkey:latest
latest: Pulling from valkey/valkey
3afb833cf95f: Pull complete 
057025682372: Pull complete 
e8fade468d5c: Pull complete 
ca4edd5b0001: Pull complete 
4f4fb700ef54: Pull complete 
94f12cff9db9: Pull complete 
206356c42440: Pull complete 
Digest: sha256:2bce660b767cb62c8c0ea020e94a230093be63dbd6af4f21b044960517a5842d
Status: Downloaded newer image for valkey/valkey:latest
docker.io/valkey/valkey:latest	
			
			

			
docker run -d \
  --name valkey \
  -p 6379:6379 \
  valkey/valkey:latest	
			
			

使用 netkiller-devops 编排工具部署

			
#!/usr/bin/env python3
##################################################
# Home	: https://www.netkiller.cn
# Author: Neo <netkiller@msn.com>
# Upgrade: 2025-04-25
# Docker 编排工具
##################################################

import sys

try:
    from netkiller.docker import *
except ModuleNotFoundError as err:
    print("pip install netkiller-devops, %s" % (err))
    exit()

development = Composes("radio")
# -----------------------------------------------------------------------------------------------
valkey = Services("valkey")
valkey.container_name("valkey")
valkey.image("valkey/valkey:latest")
valkey.restart("unless-stopped")
valkey.volumes(["/srv/valkey/valkey.conf:/etc/valkey/valkey.conf","/srv/valkey/data:/data"])
valkey.ports(["6379:6379"])
valkey.command(
    [
        "/etc/valkey/valkey.conf",
    ]
)

valkey.file(r"/srv/valkey/valkey.conf", """
requirepass CC2E34-11FC-40D0-A1B2-B9D5880FFA5
""")

# -----------------------------------------------------------------------------------------------
# production.services(valkey)
development.services(valkey)
# testing.services(valkey)
# beta.services(valkey)
# -----------------------------------------------------------------------------------------------


if __name__ == "__main__":
    try:
        docker = Docker()
        docker.none()
        # docker.env({'DOCKER_HOST':'ssh://root@192.168.30.13','COMPOSE_PROJECT_NAME':'experiment'})
        docker.sysctl({"vm.overcommit_memory": "1"})
        docker.environment(development)
        # docker.environment(testing)
        # docker.environment(production)
        docker.main()
    except KeyboardInterrupt:
        print("Crtl+C Pressed. Shutting down.")