Dockerfile 示例二:创建一个Nginx的镜像

原创 2016年05月31日 11:19:07

Dockerfile 示例二:创建一个Nginx的镜像

Nginx简述

Nginx是一个高性能的 HTTP 和 反向代理 服务器。它因为它的轻量级,易用,易于扩展而流行于业界。基于优良的架构设计,它能够比之前的类似软件处理更多的请求。它也可以用来提供静态文件服务,比如图片,脚本和CSS。

和上个例子一样,我们还是从基础镜像开始,运用FROM命令和MAINTAINER命令

  1. ############################################################
  2. # Dockerfile to build Nginx Installed Containers
  3. # Based on Ubuntu
  4. ############################################################
  5. # Set the base image to Ubuntu
  6. FROM ubuntu
  7. # File Author / Maintainer
  8. MAINTAINER Maintaner Name

安装Nginx

  1. # Install Nginx
  2. # Add application repository URL to the default sources
  3. RUN echo "deb http://archive.ubuntu.com/ubuntu/ raring main universe" >> /etc/apt/sources.list
  4. # Update the repository
  5. RUN apt-get update
  6. # Install necessary tools
  7. RUN apt-get install -y nano wget dialog net-tools
  8. # Download and Install Nginx
  9. RUN apt-get install -y nginx

Bootstrapping 

安装Nginx后,我们需要配置Nginx并且替换掉默认的配置文件

  1. # Remove the default Nginx configuration file
  2. RUN rm -v /etc/nginx/nginx.conf
  3. # Copy a configuration file from the current directory
  4. ADD nginx.conf /etc/nginx/
  5. # Append "daemon off;" to the beginning of the configuration
  6. RUN echo "daemon off;" >> /etc/nginx/nginx.conf
  7. # Expose ports
  8. EXPOSE 80
  9. # Set the default command to execute
  10. # when creating a new container
  11. CMD service nginx start

保存 dockfile。

使用Dockerfile自动构建Nginx容器

因为我们命令Docker用当前目录的Nginx的配置文件替换默认的配置文件,我们要保证这个新的配置文件存在。在Dockerfile存在的目录下,创建nginx.conf:

  1. sudo nano nginx.conf

然后用下述内容替换原有内容:

  1. worker_processes 1;
  2. events { worker_connections 1024; }
  3. http {
  4.      sendfile on;
  5.      server {
  6.          listen 80;
  7.          location / {
  8.               proxy_pass http://httpstat.us/;
  9.               proxy_set_header X-Real-IP $remote_addr;
  10.          }
  11.      }
  12. }

让我们保存nginx.conf。之后我们就可以用Dockerfile和配置文件来构建镜像。

docker筑基篇-04-使用Dockerfile构建自己的镜像

构建自己的镜像 1 构建Dockerfile上下文 2 Dockerfile文件内容 3 构建镜像 4 启动容器 构建过程中的几个问题 1 Dockerfile大致流程 2 缓存上一篇文章介绍了使用d...
  • hylexus
  • hylexus
  • 2016年10月18日 23:54
  • 3466

用dockerfile构建基于ubuntu的lnmp环境的镜像

本文主要讲述的是如何用dockerfile构建lnmp环境的镜像,前提默认你已安装好docker...
  • turtleo
  • turtleo
  • 2016年09月06日 18:50
  • 2167

Docker学习笔记(三)- Dockerfile创建本地镜像

Dockerfile创建本地镜像 本博文将会介绍在docker中,如何创建本地镜像。内容包括,编写Dockerfile文件,从编写的Dockerfile创建镜像,镜像创建的过程解析,运行所创建的镜...
  • Chenming_Hnu
  • Chenming_Hnu
  • 2017年01月13日 15:22
  • 8869

[基础] Mac OS下使用docker 之使用docker file创建镜像

背景:可以使用docker file来管理
  • wendll
  • wendll
  • 2014年08月30日 23:17
  • 1030

利用Dockerfile创建镜像并生成容器

创建Dockerfile(以mysql 5.7为例) 可以从Docker Hub上下载官方Dockerfile,以及docker-entrypoint.sh Dockerfile内容如下:FROM...
  • Care_sQueendom
  • Care_sQueendom
  • 2016年12月21日 23:44
  • 3046

Docker的实例小教程--Dockerfile制作镜像(1)

Dockerfile制作镜像。这第一个镜像自然是简单又实用,以官方ubuntu 14.04为基础,更改默认的软件源。我将其命名为ali.ubuntu,日后使用这个镜像,执行apt-get相关命令的时候...
  • q26335804
  • q26335804
  • 2016年10月22日 20:51
  • 2091

制作nginx+php的docker镜像方法

制作nginx+php的docker镜像方法 一、准备安装的工具 工具: docker-17.06.0-ce、nginx-1.13.2、PHP-5.5.38 、supervisor 配置思...
  • sen_ice
  • sen_ice
  • 2017年07月05日 10:56
  • 560

Docker容器学习梳理-Dockerfile构建镜像

在Docker的运用中,从下载镜像,启动容器,在容器中输入命令来运行程序,这些命令都是手工一条条往里输入的,无法重复利用,而且效率很低。所以就需要一 种文件或脚本,我们把想执行的操作以命令的方式写入其...
  • sqzhao
  • sqzhao
  • 2017年05月07日 03:51
  • 510

3 使用 Dockerfile 实现 自动化构建(创建) 镜像

正常来说,如果下载的一个镜像不尽如人意,想要做一些修改,然后保存为自己的镜像,怎么做呢? 首先启动容器,然后逐条执行自己想要做的修改,最后执行 docker commit 命令 保存镜像。 但是这...
  • xiaoliuliu2050
  • xiaoliuliu2050
  • 2016年12月03日 12:35
  • 1475

Docker学习笔记(3)-- 如何使用Dockerfile构建镜像

原文地址:http://blog.csdn.net/we_shell/article/details/38445979 Dockfile是一种被Docker程序解释的脚本,Dockerf...
  • qinyushuang
  • qinyushuang
  • 2015年01月31日 17:48
  • 129702
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Dockerfile 示例二:创建一个Nginx的镜像
举报原因:
原因补充:

(最多只允许输入30个字)