Docker 构建镜像

手动构建nginx
docker ps |awk '{print $1}'|sed -n '2,$'p |xargs docker stop ;
docker ps -a|awk '{print $1}'|sed -n '2,$'p|xargs docker rm ;

docker run -it --name ngx-img centos
yum -y install wget gcc gcc-c++ make openssl-devel ntp

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate cn.ntp.org.cn


wget http://nginx.org/download/nginx-1.12.0.tar.gz
wget --no-check-certificate https://ftp.pcre.org/pub/pcre/pcre-8.39.tar.gz

useradd -s /sbin/nolog -M www
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.39

make && make install

/usr/local/nginx/sbin/nginx

vi /etc/rc.local /usr/local/nginx/sbin/nginx #这条没用
vi /usr/local/nginx/conf/nginx.conf daemon off;

docker run -d -p 90:80 lijie/my-ngx:20170415v3 /usr/local/nginx/sbin/nginx
然后可以通过网页访问nginx的页面。

编写Dockerfile

# This is My Dockerfile
# Version 1.0
# Author LiJie

#Base images
From centos

#MAINTAINER
MAINTAINER Alex Li

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

#RUN
RUN yum -y install wget gcc gcc-c++ make openssl-devel ntp
RUN useradd -s /sbin/noloing -M www

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

RUN ./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_stub_status_module --with-pcre=/usr/local/src/pcre-8.39 && 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

docker run -d -p 9090:80 nginx-file:v1

原文地址:https://www.cnblogs.com/python-study/p/6716544.html