redis arm镜像报错Unsupported system page size

这个错误的原因是jemalloc导致的,jemalloc是一种内存管理库,主要用于提高程序的内存分配和释放性能,使用jemalloc编译的程序在内存页大小不同的操作系统上运行可能会遇到问题,所以在自己要运行redis的操作系统上构建是最保险的

构建方式:

这里构建redis 5.0.4版本的arm镜像,在arm机器上执行下面命令

git clone https://github.com/docker-library/redis.git
# 定位历史提交,需要什么版本自己grep
git log |  grep -5 'Update to 5.0.4'
# 取对应的提交hash值,reset一下
git reset -f --hard dcc0a2a343ce499b78ca617987e8621e7d31515b
cd 5.0/alpine
# 构建过程中会访问外网,如果下载不了自己配置一下http的网络代理
# docker build --build-arg http_proxy=http://1.1.1.1:123/ --build-arg https_proxy=http://1.1.1.1:123/ -t redis:5.0.4-alpine .
docker build -t redis:5.0.4-alpine .

经过测试可成功在自己arm机器上运行

你可能感兴趣的:(redis,git,数据库)