Docker(七)自动构建镜像

  • A+
所属分类:Docker

前文我们通过手动构建镜像,这里介绍下使用Dockerfile自动构建镜像。实验构建Nginx,可以通过以下连接参考其他构建案例:

http://www.runoob.com/docker/docker-install-nginx.html

创建目录

mkdir /opt/docker-file/nginx
cd /opt/docker-file/nginx
rz pcre-8.37.tar.gz nginx-1.9.3.tar.gz

.tar.gz文件要和Dockerfile放在同一个目录,COPY文件会自动解压

编写Dockerfile文件

vim Dockerfile

注意:D必须大写

[root@py nginx]# cd /opt/docker-file/nginx
[root@py nginx]# vim Dockerfile
#This is My first Dockerfile
#Version 1.0
#liuyalei by 2016.01.01

#基础镜像使用centos
FROM centos

#作者信息
MAINTAINER yalei

#拷贝文件,会自动解压
ADD pcre-8.37.tar.gz /usr/local/src
ADD nginx-1.9.3.tar.gz /usr/local/src

#运行命令
RUN yum install -y wget gcc gcc-c++ make openssh-devel vim*
RUN useradd -s /sbin/nologin -M www

#设置当前工作目录
WORKDIR /usr/local/src/nginx-1.9.3

#运行命令
RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.37 && make && make install
RUN echo “daemon off”>> /usr/local/nginx/conf/nginx.conf

#设置环境变量
ENV PATH /usr/local/nginx/sbin:$PATH

#开放端口
EXPOSE 80

#执行命令
CMD [“nginx”]

构建镜像

docker build -t nginx-file:v1 /opt/docker-file/nginx

验证

构建完成后会有Successfully信息,最后通过docker images就能查看到构建的镜像了。

YaLei

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: