Docker: docker安装redis

Mac中之前是用homebrew安装的各种包,前段时间Mac升级后,brew安装的软件各种用不了,于是考虑将软件安装到docker中来,于是有如下实践。

废话不多说,直接上步骤,实践出真知,建议一定要在亲自试一试

1、拉取redis镜像:

docker pull redis  #(或者docker pull redis:latest 或者其它版本号,latest为最新版)

2、查看docker镜像:

yinchendong@Yinchds-Macbook-Pro redis % docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
redis               latest              36304d3b4540        11 days ago         104MB
mysql               5.7.30              a4fdfd462add        2 weeks ago         448MB

3、在宿主机本地创建redis的配置文件:(创建了一个docker目录,docker,redis,data目录为新创建)

yinchendong@Yinchds-Macbook-Pro redis % pwd
/usr/local/docker/redis
yinchendong@Yinchds-Macbook-Pro redis % ls -l
total 168
drwxr-xr-x  2 root  wheel     64  6  8 19:56 data  # redis数据目录
-rw-r--r--  1 root  wheel  82643  6  8 20:19 redis.conf # redis配置文件

redis.conf主要改了如下内容:

# bind 127.0.0.1  # 注释掉只允许本机访问的限制
protected-mode no # 保护模式关闭
requirepass 123456 # 设置了一个密码

4、查看容器运行状态

yinchendong@Yinchds-Macbook-Pro redis % docker ps
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES

5、运行redis镜像:

yinchendong@Yinchds-Macbook-Pro redis % docker run -p 6379:6379 -d -v /usr/local/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf -v /usr/local/docker/redis/data:/usr/local/etc/redis/data --name redis redis  redis-server /usr/local/etc/redis/redis.conf
04f61f46595991119210c4dcde201585baee498ea84bffb6ed0bcf58717805ee
# -p 6379:6379 把本机的6379端口映射到docker镜像中的6379端口
# -d 以后台服务的方式运行
# -v /usr/local/docker/redis/redis.conf:/usr/local/etc/redis/redis.conf 把本机创建的/usr/local/docker/redis/redis.conf配置文件映射到docker镜像的对应目录中
# -v /usr/local/docker/redis/data:/usr/local/etc/redis/data 把本机创建的/usr/local/docker/redis/data目录映射到docker镜像的对应目录中
# --name redis redis 第一个redis为指定容器名称为redis,第二个redis为redis镜像的名称
# redis-server /usr/local/etc/redis/redis.conf 在容器中启动redis-server并使用映射到容器中的redis.conf配置文件

6、查看容器运行状态:

yinchendong@Yinchds-Macbook-Pro redis % docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
04f61f465959        redis               "docker-entrypoint.s…"   2 minutes ago       Up 2 minutes        0.0.0.0:6379->6379/tcp   redis

7、进入到容器中的redis客户端

yinchendong@Yinchds-Macbook-Pro redis % docker exec -it 04f61f465959 /bin/bash
root@04f61f465959:/data# redis-cli
127.0.0.1:6379> set jack rose
(error) NOAUTH Authentication required.
127.0.0.1:6379> auth 123456
OK
127.0.0.1:6379> set jack rose
OK
127.0.0.1:6379> get jack
"rose"
127.0.0.1:6379>

# docker exec -it 04f61f465959 (04f61f465959为docker ps中的容器id)
# exit可以退出redis命令
# 退出redis-cli后再执行exit命令即可退出容器

8、在主机中用rdm连接,可以连接成功: 

-----

9、暂停和启动容器:

yinchendong@Yinchds-Macbook-Pro redis % docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
04f61f465959        redis               "docker-entrypoint.s…"   10 minutes ago      Up 10 minutes       0.0.0.0:6379->6379/tcp   redis
yinchendong@Yinchds-Macbook-Pro redis % docker stop 04f61f465959
04f61f465959
yinchendong@Yinchds-Macbook-Pro redis % docker start 04f61f465959
04f61f465959

10、移除容器,前提是要先停止容器:先执行docker stop 容器id

docker rm 04f61f465959 # 移除单个
docer rm $(docker ps -a -q) #移除所有容器

11、移除镜像:

docker images 
docker rmi xxx # xxx为镜像名称

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值