redis docker 停止服务命令 docker启动redis失败_linux redis启动


启动 Redis 服务可以使用源码编译的方式来启动,也可以使用 Docker 容器来启动。

一、如何启动一个 Redis Docker 服务

1.1、搜索镜像

进到 docker hub 官方网站,搜索 redis


redis docker 停止服务命令 docker启动redis失败_linux 启动redis_02


1.2、Redis 镜像如何使用


redis docker 停止服务命令 docker启动redis失败_redis docker 停止服务命令_03


Redis Docker 镜像的使用方式主要可以分为三种

a、快速启动一个 Redis 服务


docker run --name some-redis -d redis


b、启动 Redis 服务,同时挂载逻辑卷,将容器中 Redis 运行产生的数据持久化到宿主机中


docker run --name some-redis -v /docker/host/dir:/data -d redis


c、启动 Redis 服务,挂载逻辑卷存储运行数据,引用外部自定义配置文件


docker run 
-v /myredis/conf/redis.conf:/usr/local/etc/redis/redis.conf 
-v /myredis/data:/data
--name myredis redis redis-server /usr/local/etc/redis/redis.conf


1.3、Redis 镜像选择

Redis Docker 镜像有两种

  • `redis:<version>`


redis docker 停止服务命令 docker启动redis失败_linux 启动redis_04


镜像的名称通常都是单独一个版本号,或者版本号-buster ,这类 Redis 镜像底层操作系统是 Debian。

  • `redis:<version>-alpine`


redis docker 停止服务命令 docker启动redis失败_linux 启动redis_05


另一种就是镜像名称带有 alpine 的Redis镜像,alpine 和 debine 一样是一个 Linux 的发行版本

小贴士:
Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox

两种镜像区别

  • 镜像构建的底层操作系统不同,一个是 Debian 一个是 Alpine
  • 由于底层操作系统不同,Alpine 是一个轻量级的Linux,所以在体积上 由 Alpine 构建的 Redis 镜像更小。

这两种版本我们要如何选择,Docker hub Redis 官方文档给到了说明


redis docker 停止服务命令 docker启动redis失败_linux 启动redis_06


redis docker 停止服务命令 docker启动redis失败_linux redis启动_07


  1. 如果说我们需要基于某个 Redis Docker 镜像构建新的镜像,选择底层操作系统为 Debian 的会更好,
  2. 在你不知道怎么选的时候,可以直接用 Debian 为操作系统的 Redis 发行版本
  3. 当你明确,你不需要针对 Redis Docker 镜像进行深度构建,因为 apline 使用的是 musl lib 而不是 glibc 的内库,所以在深度定制上并不那么友好,针对这种情况,可以选择 操作系统为 Alpine 的Redis 镜像版本,并且这个发行版本的镜像体积会更小

二、Docker 启动 Redis 单实例服务演示

2.1、存放目录结构


redis docker 停止服务命令 docker启动redis失败_linux 启动redis_08


2.2、拉取镜像


docker pull redis:5.0.9-alpine


2.3、脚本内容

启动脚本


docker run 
## 外部配置i文件映射
-v /opt/share/redis_5_0_9/docker/config/redis.conf:/usr/local/etc/redis/redis.conf 
## 逻辑卷映射,用来存放 Redis 运行时产生的数据
-v /opt/share/redis_5_0_9/docker/data:/data 
## 端口映射
-p 7388:6379 
## 容器名称
--name redis-5.0.9 
## 后台运行
-d 
## 指定镜像
redis:5.0.9-alpine 
## 容器启动后,执行 redis-server 脚本,并制定配置文件
redis-server /usr/local/etc/redis/redis.conf


停止脚本


docker stop redis-5.0.9
docker rm redis-5.0.9