docker镜像制作之Dockerfile文件---snort
2016-10-22 09:38
627 查看
<span style="font-size:18px;"># Snort 2.9.8.0 # # VERSION 1 FROM opennsm/debian MAINTAINER xu <921586520@qq.com> # Metadata LABEL organization=iie LABEL program=snort # Specify container username e.g. training, demo ENV VIRTUSER snort # Specify program ENV PROG snort # Specify source extension ENV EXT tar.gz # Specify Snort version to download and install ENV VERS 2.9.8.0 # Specific libpcap to download and install ENV LVERS libpcap-1.7.4 # Specific libdnet to download and install ENV LDVERS libdnet-1.11 # Specific daq to download and install ENV DVERS daq-2.0.6 # Install directory ENV PREFIX /opt # Path should include prefix ENV PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:$PREFIX/bin # Install dependencies RUN apt-get update -qq RUN apt-get install -yq build-essential libpcre3-dev \ bison flex zlib1g-dev autoconf libtool --no-install-recommends # Compile and install libpcap RUN wget http://www.tcpdump.org/release/$LVERS.$EXT RUN tar zxf $LVERS.$EXT && cd $LVERS && ./configure --prefix=/usr && make && make install</span>
<span style="font-size:18px;"> # Compile and install libdnet #RUN wget http://libdnet.googlecode.com/files/$LDVERS.tgz RUN wget http://nchc.dl.sourceforge.net/project/libdnet/libdnet/libdnet-1.11/$LDVERS.tar.gz RUN tar -zxf $LDVERS.tar.gz && cd $LDVERS && ./configure --prefix=/usr --enable-shared && make && make install RUN echo >> /etc/ld.so.conf /usr/lib && echo >> /etc/ld.so.conf /usr/local/lib # Compile and install daq RUN wget --no-check-certificate https://www.snort.org/downloads/snort/$DVERS.$EXT RUN tar -zxf $DVERS.$EXT && cd $DVERS && ./configure && make && make install # Compile and install Snort USER $VIRTUSER WORKDIR /home/$VIRTUSER #RUN wget --no-check-certificate https://www.snort.org/downloads/snort/$PROG-$VERS.tar.gz COPY snort-2.9.8.0.tar.gz /home/$VIRTUSER RUN tar -zxf $PROG-$VERS.$EXT WORKDIR /home/$VIRTUSER/$PROG-$VERS RUN ./configure --prefix=$PREFIX --enable-sourcefire --enable-large-pcap --enable-profile --enable-gdb --enable-linux-smp-stats && make #RUN ./configure --enable-sourcefire --enable-large-pcap --enable-profile --enable-gdb --enable-linux-smp-stats && make USER root RUN make install && ldconfig RUN chmod u+s $PREFIX/bin/snort RUN mkdir -p /etc/snort/rules RUN cp etc/*.conf /etc/snort RUN cp etc/*.config /etc/snort RUN cp etc/unicode.map /etc/snort RUN mkdir -p /var/log/snort # Cleanup RUN rm -rf /home/$VIRTUSER/$PROG-$VERS RUN rm -rf /root/$DVERS RUN rm -rf /root/$LVERS RUN rm -rf /root/$LDVERS</span>
<span style="font-size:24px;">注意:本镜像是参考官网进行改造,目前官网提供的一些标准Dockerfile文件,并不是拷贝过来就能直接build,例如在该镜像的改造过程中就会遇见相关问题,例如:</span>
在下载nort-2.9.8.0.tar.gz的时候,原Dockerfile文件提供的是官网下载链接(利用wget下载),但是现在这个链接已经不存在,那我我采取的办法是先将snort-2.9.8.0.tar.g文件下载到Dockerfile所在的目录下,然后用COPY代替wget操作来解决问题。
相关文章推荐
- docker镜像制作之Dockerfile文件---hadooop伪分布式
- apache服务的docker镜像 以及用Dockerfile制作apache服务的镜像
- Docker镜像中Dockerfile的制作或编写
- 3.3、Dcoker-1.12 Dockerfile,镜像制作详解以及使用说明
- 利用Dockerfile文件创建带有sshd服务的centos镜像
- 制作mongodb的Docker镜像文件
- Docker中镜像构建文件Dockerfile与相关命令的详细介绍
- docker 安装 创建支持ssh服务的镜像 创建nginx服务的镜像 用dockerfile制作nginx镜像
- Dockerfile制作Docker镜像
- Docker实践(三)应用场景(创建私有库、用dockerfile制作自己应用镜像、利用私有库发布)
- nodejs 版本dockerfile 文件制作,和常用命令
- 使用Dockerfile文件创建一个镜像,运行该镜像后并使用浏览器进行访问
- 第4章 Maven插件读取DockerFile文件构造镜像
- 脉冲云[编译构建]服务----使用Dockerfile文件,在线构建Dcoker镜像
- 使用Dockerfile文件构建基于centOS系统的tomcat镜像
- docker制作镜像 apt-get 安装文件报错debconf: unable to initialize frontend: Dialog
- Dockerfile编写制作含有node环境的项目镜像
- docker镜像的制作(一) dockerfile
- Docker下的Kafka学习之一:制作集群用的镜像文件
- Docker入门学习(4)----Dockerfile制作第一个镜像和容器中的第一个javaweb应用