Docker 之 构建镜像

构建镜像的两种方式,无论哪种方式,创建新镜像都需要依赖一个已有的标准镜像文件

1、通过Docker commit 来保存当前容器内容为一个新镜像

$ docker commit container_name  new_image_name

2、通过Dockerfile文件构建新镜像

编辑Dockerfile文件
#FROM必须是第一行,指明要基于哪个镜像进行构建
FROM daocloud.io/centos:7 
#多行标签
LABEL com.example.version="0.0.1"\ com.example.release-date="2017-05-25"
#将同Dockerfile文件目录下的文件拷贝到镜像的指定目录下
COPY shm.jar /usr/local/
COPY jdk1.8 /usr/local/
#设置镜像的环境变量
ENV JAVA_HOME=/usr/local/jdk1.8
ENV PATH=$JAVA_HOME/bin:$PATH
#指定容器被运行时,自动执行的命令,方便服务镜像的使用
CMD /usr/bin/touch /usr/local/shm.log &&\
      java -jar /usr/local/shm.jar &> /usr/local/shm.log &
#曝光运行该镜像容器的端口
EXPOSE 9090

构建镜像

# 注意最后的 .  这个点指定Dockerfile所在的当前目录
docker build -t image_name:tag .

运行镜像
docker run -idt --name container_name -p port:port image_name:tag shell

docker run -idt --name mysql -p 3306:3306 local/mysql:1.0 /bin/bash
上一篇:Docker 之 Dockerfile


下一篇:hadoop搭建之HBase安装