本文是适合对docker从来没接触过,像我这样的小白来操作,我用的是centos

1.首先安装docker

centos安装docker命令如下:

$ 1、更新update到最新的版本
~ yum update
$ 2、卸载老版本docker
~ yum remove docker docker-common docker-selinux docker-engine
$ 3、安装需要的软件包
~ yum install -y yum-utils device-mapper-persistent-data lvm2
$ 4、设置yum源
~ yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
$ 5、查看docker版本
~ yum list docker-ce --showduplicates|sort -r
$ 6、安装docker
~ yum install docker-ce-18.03.1.ce -y
$ 7、启动docker
~ systemctl start docker
$ 8、加入开机自启
~ systemctl enable docker
$ 9、配置国内镜像
~ vi /etc/docker/daemon.json
{
"registry-mirrors": ["https://cr.console.aliyun.com/"]
}
~ ps -aux | grep docker

docker安装成功后页面会出现docker图标,还可以docker -version看来是否安装成功

注意:配置阿里镜像https://cr.console.aliyun.com/ 可能还是会很慢,更换成http://hub-mirror.c.163.com/ 加速镜像

2. 创建dockerfile文件

Dockerfile 是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建

这种方式是比较流行的方式。就是将需要对镜像的操作全部写到一个文件中,然后使用docker build命令从这个文件中创建镜像。这种方法可以使镜像的创建变得透明化和独立化,并且创建过程可以被重复执行。dockerfile文件以行位单位,性首为dockerfile命令,命令都是大写形式,期后紧跟着的是命令的参数。

 除了创建Dockerfile文件外还有准备 redis-5.0.7.tar.gz 安装包,下载地址:https://github.com/antirez/redis/archive/5.0.7.tar.gz

 Dockerfile文件内容如下:

FROM centos:centos7
RUN groupadd -r redis && useradd -r -g redis redis
# copy redis安装程序
# COPY	["<源路径1>",...	"<目标路径>"]
COPY ./redis-5.0.7.tar.gz redis-5.0.7.tar.gz
 
RUN yum update -y ; \
    yum -y install gcc automake autoconf libtool make wget epel-release gcc-c++;
 

上面大概意思是:拉取centos7镜像,将宿主机redis5安装包拷贝到要创建的镜像中,再安装gcc

执行:

docker build -t redis5 .

安装成功后 docker images会出现名为 redis5的镜像

接着再创建Dockerfile2文件

FROM redis5
 
EXPOSE 6379

执行:docker build -t redis55 -f Dockerfile2 .

成功后会看到多了一个redis55镜像

3.安装redis5

docker run -itd -p 8379:6379  --name redis5 redis55

创建redis5的容器并配置端口,8379为宿主机的端口,6379为容器端口

tar -xzvf redis-5.0.7.tar.gz

make

make install

依次解压安装

安装完成后执行redis-server 

恭喜成功了,啦啦啦,是不是瞬间心旷神怡,万马奔腾的赶脚...

请别慌,年轻人,这样我们还忘记了一步,要使外部能访问,还需改个配置。

find / -name reids.conf

找到redis.conf文件

/127.0.0.1

bind 127.0.0.1 注释掉

/protected

 protected-mode yes 将yes改为no

重启 redis-server   /usr/src/redis/redis-5.0.7/redis.conf

 

使用 redis desktop managger

端口为8379 ip为你宿主机ip

这样外部就可以访问了