docker(四) 使用Dockerfile构建镜像

Dockerfile官方指南c++

编写Docker最佳实践(翻译:编写Dockerfiles的最佳实践)redis

Docker开发最佳实践(翻译:基于docker开发的最佳实践)docker

 

下面以一个例子来演示构建镜像的过程。vim

#在/tmp目录下演示
cd tmp
mkdir build-redis-image

1.建立Dockerfile文件centos

vim Dockerfile

并写入以下内容:bash

# 构建Redis镜像:在Centos7.4镜像中安装redis后打包成本身的镜像。
#基于Centos7.4构建
FROM centos:7.4

#安装依赖
RUN yum -y install tar cpp binutils glibc glibc-kernheaders glibc-common glibc-devel gcc make gcc-c++ libstdc++-devel tcl

#建立安装目录
RUN mkdir -p /redis/data && cd /redis

#拷贝redis的安装包
COPY ./redis-3.0.0.tar.gz /redis

#解压
RUN cd /redis && tar -xvf redis-3.0.0.tar.gz && rm -rf redis-3.0.0.tar.gz && cd redis-3.0.0

#编译、安装
RUN cd /redis/redis-3.0.0 && make && make install

#复制配置文件到/redis中,而且修改redis为后台运行
RUN cp /redis/redis-3.0.0/redis.conf /redis/ && echo "daemonize yes" >> redis.conf

#设置数据挂载目录以及工做目录
VOLUME /redis/data
WORKDIR /redis/data

#容器启动后执行该命令
ENTRYPOINT ["/usr/local/bin/redis-server", "/redis/redis.conf"]

#设置对外的端口号
EXPOSE 6379

而后上传须要打包的redis-3.0.0.tar.gz文件到上面建立的/tmp/build-redis-image目录下,这里使用rz命令上传。ui

rz

2.使用docker build命令构建spa

docker build -t my-redis:3.0 . (后面有个点,表示当前路径)

接下来就能够使用咱们本身构建的镜像来建立容器了。.net

3.建立容器翻译

docker create --name myRedis -p 6379:6379 -t my-redis:3.0

4.启动容器

docker start myRedis

5.尝试着链接一下redis

docker exec -it myRedis /bin/bash
redis-cli

或者直接使用RedisDesktopManager链接
相关文章
相关标签/搜索