dockerfile 搭建nginx镜像

?

昨晚看了看dockerfile的内容,想自己玩一玩。折腾了一晚上,到今天才顺利构建出来(弱鸡如我~)。

首先,我新建了一个文件夹,并且放进了nginx源码包,建立了一个Dockerfile。

Dockerfile内容如下:

FROM centos:centos7      #基础镜像

MAINTAINER eryoung2 [email protected]  #维护人

RUN ping -c 1 baidu.com               #测试DNS
RUN yum -y install gcc make pcre-devel zlib-devel tar zlib #依赖安装

ADD nginx-1.16.0.tar.gz /usr/src/         #添加源码包

RUN cd /usr/src/nginx-1.16.0 \            #进入源码包
 && mkdir /usr/local/nginx \              #建立目标目录
 && ./configure --prefix=/usr/local/nginx \  #预编译
 && make && make install \                   #编译安装
 && ln -s /usr/local/nginx/sbin/nginx /usr/bin/nginx \  #软连接
 && nginx   #启动

RUN rm -rf /usr/src/nginx-1.16.0  #删除源码

EXPOSE 80   #暴露80端口给其他容器(不是给宿主服务器!!!)

然后,使用如下命令:

docker build -t nginx:v2 .

就可以了。

原文地址:https://www.cnblogs.com/young233/p/11164687.html

时间: 2024-08-01 10:04:33

dockerfile 搭建nginx镜像的相关文章

8.Docker之使用dockerfile创建nginx镜像

一.前言 看了很多人的dockerfile,都是长篇大论,解释的又很少,对于初学者来说根本不知道指令的意思,哪怕知道指令的意思,也不知道指令后面配置的一大串东西来自于哪里,而这一大串又无需去记忆,例如: 开头的RUN指令都能根据dockerfile的指令说明可以知道该指令是干嘛用的,但是后面这一串这么长的东西又是来自于哪里? 所以在编写dockerfile之前,你必须懂的nginx(该文章是基于dockerfile创建nginx镜像)在linux上的安装流程,否则,需要安装什么依赖等都不知道,就

dockerfile构建nginx镜像

Dockerfile是一个文本格式的配置文件,用户可以使用dockerfile来快速创建自定义的镜像. Dockerfile指令说明 分类 指令 说明 配置指令 ARG 定义创建镜像过程中使用的变量 配置指令 FROM 指定镜像创建的基础镜像 配置指令 LABEL 为生成的镜像添加元数据标签信息 配置指令 EXPOSE 声明镜像内服务监听的端口 配置指令 ENV 指定环境变量 配置指令 ENTRYPOINT 指定镜像的默认入口指令 配置指令 VOLUME 创建一个数据卷挂载点 配置指令 USRE

使用dockerfile构建nginx镜像 转

docker构建镜像的方法:   commit.dockerfile 1.使用commit来构建镜像: commit是基于原有镜像基础上构建的镜像,使用此方法构建镜像的目的:保存镜像里的一些配置信息和修改的信息.相当于一个镜像的快照. 2.使用dockerfile来构建镜像: dockerfile是快速构建所需(自定义)镜像. dockerfile的指令: FROM:指定基础镜像(FROM是必备的指令,并且必须为第一条指令). RUN: 用来执行命令行命令.其基本格式: shell格式: RUN

Dockerfile构建nginx镜像以及使用nginx -g "daemon off;"方式前台运行

编写安装nginx的shell脚本 #!/bin/bash yum install -y gcc gcc-c++ make pcre pcre-devel zlib zlib-devel cd /usr/local/nginx-1.16.0 ./configure --prefix=/usr/local/nginx && make && make install dockerfile FROM centos:7 ADD nginx-1.16.0.tar.gz /usr/lo

使用Dockerfile构建Nginx,Tomcat,MySQL镜像

实验环境说明 本机IP地址:192.168.10.157 构建mysql镜像时,验证的主机IP:192.168.10.149 构建Nginx镜像 1.下载基础镜像--centos镜像 docker pull centos 2.创建工作目录 mkdir /opt/nginx cd /opt/nginx/ 3.创建并编写Dockerfile文件 vim Dockerfile FROM centos MAINTAINER this is nginx image <xxy> RUN yum insta

基于alpine用dockerfile创建的nginx镜像

1.下载alpine镜像 [[email protected] ~]# docker pull alpine Using default tag: latest Trying to pull repository docker.io/library/alpine ... latest: Pulling from docker.io/library/alpine 4fe2ade4980c: Pull complete Digest: sha256:621c2f39f8133acb8e64023a9

最简单的dockerfile使用教程 - 创建一个支持SSL的Nginx镜像

什么是dockerfile?简单的说就是一个文本格式的脚本文件,其内包含了一条条的指令(Instruction),每一条指令负责描述镜像的当前层(Layer)如何构建. 下面通过一个具体的例子来学习dockerfile的写法. 新建一个dbuild文件夹,创建一个自定义的Nginx首页,逻辑很简单,显示一个自定义的图片文件train.jpg. 我想基于标准的Nginx镜像做一些修改,让Nginx支持SSL.SSL(Secure Sockets Layer 安全套接层),及其继任者传输层安全(Tr

使用 docker 搭建 nginx+php-fpm 环境 (两个独立镜像)

:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body .anchor{float:left;padding-right:4px;margin-left:-20px;line-height:1}.markdown-bod

Linux下Dockerfile搭建lnmp(目前只有n和p)

# 一:环境准备centos7.4以及搭建好的Docker [[email protected] ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core)[[email protected] ~]# docker -vDocker version 17.03.2-ce, build f5ec1e2 # 二:搭建nginx和php的镜像1.nginx创建基础镜像 [[email protected] /]# vim Docke