利用dockerfile 安装一个nginx-1.14.1
FROM docker.io/centos MAINTAINER jim 107420988@qq.com
ENV TZ "Asia/Shanghai"
#ENV TERM xterm RUN mkdir -p /etc/yum.repos.d/bak && cd /etc/yum.repos.d/ && mv /etc/yum.repos.d/*.repo bak/
#把当前目录下的localhost.repo追加到镜像的/etc/yum.repo.d/目录下
ADD localhost.repo /etc/yum.repos.d/docker.repo
#执行的命令
RUN yum clean all RUN yum makecache RUN yum repolist RUN rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
RUN yum install -y wget file vim* gcc gcc-c++ make openssl-devel lrzsz patch unzip libuuid-devel libunwind libunwind-level cmake net-tools make pcre-devel zlib-devel
ADD pcre-8.42.tar.gz /usr/local/src
ADD nginx-1.14.1.tar.gz /usr/local/src
ADD zlib-1.2.11.tar.gz /usr/local/src
ADD openssl-1.1.0c.tar.gz /usr/local/src
ADD libunwind-1.2.tar.gz /usr/local/src
ADD gperftools-2.7.tar.gz /usr/local/src
ADD incubator-pagespeed-ngx-1.13.35.2-stable.zip /usr/local/src
ADD posl-1.13.35.2-x64.tar.gz /usr/local/src
ADD nginx_upstream_check_module-master.zip /usr/local/src
ADD nginx.conf /usr/local/src
ADD localhost.conf /usr/local/src WORKDIR /usr/local/src/pcre-8.42
RUN ./configure --prefix=/usr/local/pcre && make && make install WORKDIR /usr/local/src/zlib-1.2.11
RUN ./configure --prefix=/usr/local/zlib && make && make install WORKDIR /usr/local/src/openssl-1.1.0c
RUN ./config --prefix=/usr/local/openssl && make && make install RUN ln -s /usr/local/openssl/bin/openssl /usr/bin/openssl
RUN ln -s /usr/local/openssl/include/openssl /usr/include/openssl
RUN ln -s /usr/local/openssl/lib/libcrypto.so.1.1 /usr/lib64/libcrypto.so.1.1 RUN echo "/usr/local/lib" >> /etc/ld.so.conf
RUN echo "/usr/local/openssl/lib" >> /etc/ld.so.conf
RUN /sbin/ldconfig WORKDIR /usr/local/src/libunwind-1.2
RUN ./configure --prefix=/usr/local/libunwind && make && make install WORKDIR /usr/local/src/gperftools-2.7
RUN ./configure --prefix=/usr/local/gperftools --enable-libunwind --enable-frame-pointers --enable-emergency-malloc && make && make install
RUN ln -s /usr/local/gperftools/lib/* /usr/local/lib
RUN mkdir -p /tmp/tcmalloc
RUN chmod 0777 /tmp/tcmalloc/
RUN /sbin/ldconfig WORKDIR /usr/local/src/ RUN unzip incubator-pagespeed-ngx-1.13.35.2-stable.zip
RUN unzip nginx_upstream_check_module-master.zip
RUN cp -frp psol incubator-pagespeed-ngx-1.13.35.2-stable/psol RUN find incubator-pagespeed-ngx-1.13.35.2-stable -type d -exec chmod +rx {} \;
RUN find incubator-pagespeed-ngx-1.13.35.2-stable -type f -exec chmod +r {} \; WORKDIR /usr/local/src/nginx-1.14.1
RUN patch -p1 < ../nginx_upstream_check_module-master/check_1.14.0+.patch WORKDIR /usr/local/src/nginx-1.14.1/ RUN useradd -s /sbin/nologin -M www
RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --pid-path=/usr/local/nginx/nginx.pid --lock-path=/usr/local/nginx/lock/nginx.lock --with-stream --with-stream_ssl_modul
e --with-http_realip_module --with-http_auth_request_module --with-http_ssl_module --with-google_perftools_module --with-file-aio --with-http_dav_module --with-http_flv_module --with-h
ttp_realip_module --with-http_gzip_static_module --with-http_stub_status_module --with-mail --with-mail_ssl_module --with-pcre=/usr/local/src/pcre-8.42 --with-pcre=/usr/local/src/pcre-8
.42 --with-openssl=/usr/local/src/openssl-1.1.0c --with-zlib=/usr/local/src/zlib-1.2.11 --with-debug --with-http_stub_status_module --add-module=/usr/local/src/nginx_upstream_check_mo
dule-master --add-module=/usr/local/src/incubator-pagespeed-ngx-1.13.35.2-stable --http-client-body-temp-path=/usr/local/nginx/client --http-proxy-temp-path=/usr/local/nginx/proxy --htt
p-fastcgi-temp-path=/usr/local/nginx/fastcgi --http-uwsgi-temp-path=/usr/local/nginx/uwsgi --http-scgi-temp-path=/usr/local/nginx/scgi && make && make install RUN mkdir -p /usr/local/nginx/{lock,proxy,client,fastcgi,uwsgi,scgi,logs/localhost}
RUN ln -s /usr/local/nginx/sbin/* /usr/local/sbin/ RUN mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
WORKDIR /usr/local/src/
COPY nginx.conf /usr/local/nginx/conf/nginx.conf
RUN mkdir -p /usr/local/nginx/conf/vhosts
COPY localhost.conf /usr/local/nginx/conf/vhosts/localhost.conf
RUN cd /usr/local/src && rm -rf *
RUN yum clean all
RUN rm -rf /var/cache/yum EXPOSE 80
WORKDIR /
RUN nginx
CMD ["nginx", "-g", "daemon off;"]
利用dockerfile 安装一个nginx-1.14.1的更多相关文章
- 利用dockerfile 安装一个tomcat7
FROM docker.io/centos #定义自己的说明 MAINTAINER jim ming "107420988@qq.com" #切换镜像目录,进入/usr/local ...
- 利用Dockerfile构建一个基于CentOS 7镜像
利用Dockerfile构建一个基于CentOS 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像. Dockerfile内容如下: FROM centosMAINTA ...
- 利用Dockerfile构建一个基于centos 7,包括java 8, tomcat 7,php ,mysql+mycat的镜像
Dockerfile内容如下: FROM centos MAINTAINER Victor ivictor@foxmail.com WORKDIR /root RUN rm -f /etc/yum.r ...
- 如何制作一个Nginx镜像
1,从这里你将学到编写Dockerfile的4个重要指令RUN,EXPOSE,ADD,ENTRYPOINT2,在Dockerfile中编写拷贝文件至容器的方法3, 安装一个nginx server,并 ...
- 学了C语言,如何利用CURL写一个下载程序?—用nmake编译CURL并安装
在这一系列的前一篇文章学了C语言,如何为下载狂人写一个磁盘剩余容量监控程序?中,我们为下载狂人写了一个程序来监视磁盘的剩余容量,防止下载的东西撑爆了硬盘.可是,这两天,他又抱怨他的下载程序不好用,让我 ...
- CentOS 7.4安装Nginx 1.14.0
一.安装所需环境 1.gcc 安装 yum install gcc-c++
- 编译安装 nginx -1.14.2
编译安装 nginx -1.14.2 1 ) 下载nginx-1.14.2 源码包: wget http://nginx.org/download/nginx-1.14.2.tar.gz 2 ) 编译 ...
- Docker Alpine Dockerfile 安装nginx,最小镜像
Docker Alpine Dockerfile 安装nginx,最小镜像 FROM alpine MAINTAINER will ## 将alpine-linux:apk的安装源改为国内镜像 RUN ...
- docker学习笔记6:利用dockerfile创建镜像介绍(生成简单web服务器镜像)
本文介绍如何利用dockerfile来创建镜像.下面介绍具体的操作过程: 一.创建构建环境 操作示例如下: xxx@ubuntu:~$ pwd /home/xxx xxx@ubuntu:~$ mkdi ...
随机推荐
- Storm 学习之路(二)—— Storm核心概念详解
一.Storm核心概念 1.1 Topologies(拓扑) 一个完整的Storm流处理程序被称为Storm topology(拓扑).它是一个是由Spouts 和Bolts通过Stream连接起来的 ...
- java中更新文件时,指定原文件的编码格式,防止编码格式不对,造成乱码
1.pom中添加引入cpdetector(一个可以自动检测文本编码格式的项目) //pom中添加引入cpdetector(一个可以自动检测文本编码格式的项目) <dependency> & ...
- Fastjson的SerializerFeature序列化属性
Fastjson的SerializerFeature序列化属性 fastJson在key的value为null时,默认是不显示出这个字段的 JSONObject.toJSONString(Object ...
- 长春理工大学第十四届程序设计竞赛(重现赛)J
J.Printout 题目:链接:https://ac.nowcoder.com/acm/contest/912/J 题目: 小r为了打校赛,他打算去打字社打印一份包含世界上所有算法的模板. 到了打字 ...
- django-haystack+whoosh+jieba实现中文全文搜索
先上效果图 附上个人网站:https://liyuankun.cn 安装依赖库 注意:这里我们不安装django-haystack,因为要添加中文分词的功能很麻烦,所以我直接集成了一个中文的djang ...
- 【HDU - 2102】A计划(bfs)
-->A计划 Descriptions: 可怜的公主在一次次被魔王掳走一次次被骑士们救回来之后,而今,不幸的她再一次面临生命的考验.魔王已经发出消息说将在T时刻吃掉公主,因为他听信谣言说吃公主的 ...
- 破坏之王-DDoS攻击与防范深度剖析
破坏之王-DDoS攻击与防范深度剖析 下载:链接:https://pan.baidu.com/s/1bzVT6YkZGGg7anpQWDknjA 提取码:j7ns 网际空间的发展带来了机遇,也带来了威 ...
- leetcode的Hot100系列--461. 汉明距离
求两个数的二进制位不同的位置,最先想到的就是异或操作, 异或:按位运算,相同为0,不同为1. 比如: a = 6 对应的二进制表示为: 0 0 1 1 1 b = 9 对应的二进制表示为: 0 1 ...
- BASE64Encoder及BASE64Decoder的正确用法
一直以来Base64的加密解密都是使用sun.misc包下的BASE64Encoder及BASE64Decoder的sun.misc.BASE64Encoder/BASE64Decoder类.这人个类 ...
- Java web导出word,文件名为中文,%E6%9D%90%E8%B4%A8%E5%8D%95乱码
因为文件名为中文,导出时会有乱码问题 原代码: String fileName = "文件名.doc"; response.setHeader("Content-Disp ...