docker部署redis5.0.3实践

参考官方文档

-docker hub官网

docker部署mysql看这里

docker部署mongodb实践

获取镜像

docker pull  redis:5.0.3   //:5.0.3    为版本标签也可使用 docker pull redis 获取最新版本

查看获取的镜像

docker images 

显示:

wt-001% docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis               latest              5d2989ac9711        2 weeks ago         95MB
centos              7                   1e1148e4cc2c        5 weeks ago         202MB
mysql               latest              f991c20cb508        2 months ago        486MB

上面一行 redis 就是

创建数据卷进行数据持久化

在启动容器之前,我先创建一个数据卷来进行持久化,当然也可以直接-v进行指定,我这里就将数据卷交给docker进行管理:

docker volume create redis

查看创建的volume:

docker volume ls

显示:

wt-001% docker volume ls
DRIVER              VOLUME NAME
local               04ed2856cb9db6f73cb187094939fc733c17a98501350cec3207e64ff0bc67af
local               mysql
local               redis

最后一个 redis 就是

启动容器

docker container run -p 6379:6379  --restart=always  --mount source=redis,destination=/var/lib/redis  -v /etc/localtime:/etc/localtime  --name redis  -d redis
redis-server --appendonly yes

注意:
如果在运行 docker container run XXXX 容器时没有设置--restart=always选项,则在重新启动系统后,这些容器将不会自动启动。

命令说明:

1.docker container run :启动一个容器并运行。以前版本直接用docker run,后来我估计是为了更细分职责,docker添加了manager command,即docker container,docker image等等。这样符合了模块化的思想,职责更明确(个人想法)。
2. -p 6379:6379 :宿主机的6379端口与容器的6379端口进行绑定。这样外部可以通过访问宿主机的6379端口进而访问到容器中的6379端口。
3. --mount source=redis,destination=/var/lib/redis :数据卷进行绑定。source是指的上面我们在宿主机创建出来的volume,destination即我们要与容器中的哪个数据卷进行绑定。当然绑定数据卷还可以用-v 宿主机数据卷:容器数据卷进行绑定。
4. -v /etc/localtime:/etc/localtime :设定容器的时间与宿主机保持一致。
5. --name redis :设置容器的名称redis。注意:容器名称是唯一的。
6. -d redis :告诉容器在后台运行 redis

在容器中登录 redis

docker container exec -it redis  /bin/bash

命令说明:

  1. docker container exec 进入容器

  2. -t 让docker分配一个伪终端,并绑定到容器的标准输入上

  3. -i 让容器的标准输入保持打开

  4. redis 是容器的名字

这时你会进入容器的终端界面,启动redis的连接命令即可

连接 redis

root@1e95ed1467d5:/data# redis-cli
127.0.0.1:6379>

获取运行redis容器IP

docker container port redis

显示:

wt-001% docker container port redis
6379/tcp -> 0.0.0.0:6379

则此时redis容器IP地址为:0.0.0.0

远程登陆redis

image.png
image.png
image.png

如上图连接成功

你可能感兴趣的:(docker部署redis5.0.3实践)