什么是Dockerfile?
按照平时,我们都需要先让一个容器跑起来,然后进去搭建制定自己的服务,那有没有更简洁的方法呢?Dockerfile就是为了更方便的制定容器的。
首先先看Dockerfile里的一些定义,这里从网上截了个图,比较形象:
创建目录:
要先把需要的软件包放在同一个目录下
编写Dockerfile,这里要特别提醒,Dockerfile编写需要非常注意空格!!!
vim Dockerfile
添加:
# This is My first Dockerfile
# Version 1.0
# Author: syk
#Base images
FROM centos
#MAINTAINER
MAINTAINER yongkang.shi
#ADD
ADD pcre-8.38.tar.gz /usr/local/src
ADD nginx-1.8.1.tar.gz /usr/local/src
#RUN
RUN yum install -y wget gcc gcc-c++ make openssl-devel
RUN useradd -s /sbin/nologin -M www
#WORKDIR
WORKDIR /usr/local/src/nginx-1.8.1
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.38 && make && make install
RUN echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf
ENV PATH /usr/local/nginx/sbin:$PATH
#EXPOSE
EXPOSE 80
#CMD
CMD ["nginx"]
运行命令创建容器:
docker build -t nginx-file:v2 /opt/docker-file/nginx/
最后会提示构建成功:
docker ps -a查看一下: