docker学习笔记之dockerfile创建镜像

dockerfile创建镜像

     通过dockerfile创建镜像的第一点就是先创建一个空的目录。

# vim Dockerfile
# This is My frist Dockerfile
# Version 1.0
# Author : Zhoooo!

#Base images
FROM centos

#MAINTAINER
MAINTAINER Jason Wei

#ADD
ADD nginx-1.12.0.tar.gz /usr/local/src
ADD pcre-8.39.tar.gz    /usr/local/src

#RUN
RUN yum -y groupinstall "Development tools"
RUN yum -y install openssl-devel
RUN useradd -s /sbin/nologin -M www

#WORKDIR
WORKDIR /usr/local/src/nginx-1.12.0

RUN mkdir -pv /var/tmp/nginx/{client,fcgi,proxy,scgi,uwsgi}
RUN ./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=www --group=www --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client --http-proxy-temp-path=/var/tmp/nginx/proxy --http-fastcgi-temp-path=/var/tmp/nginx/fcgi --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre=/usr/local/src/pcre-8.39  && make && make install

ENV PATH /usr/local/nginx/sbin:$PATH

EXPOSE 80

CMD ["nginx"]


看一下目录环境。

# ls
Dockerfile  nginx-1.12.0.tar.gz  pcre-8.39.tar.gz


直接创建

# docker build -t nginx-file .


注意后面有一个点

完成!!!!


下面介绍一下Dockerfile中的一些选项。

FROM              告诉他是以什么镜像为基础的。


MAINTAINER   维护者信息


RUN                 后面跟着想要运行的命令


ADD                 自动copy文件,如果是压缩包的话,会自动解压


WORKDIR       告诉当前的工作目录


VOLUME         目录挂载

VOLUME ["/tmp/data"] 


EXPOSE          暴露的端口

格式 EXPOSE 80     容器的80端口将要被映射  docker run -p 8000 image  8000->80


ENV 环境变量的指定


CMD                 容器启动时执行的命令。

格式  CMD ["executable","param1","param2"]



你可能感兴趣的:(运维,云计算)