Docker 安装 Nginx

2023-11-07

方法一、通过 Dockerfile构建

创建Dockerfile

首先,创建目录nginx,用于存放后面的相关东西。

edualiyun@edualiyun:~$ mkdir -p ~/nginx/www ~/nginx/logs ~/nginx/conf

www目录将映射为nginx容器配置的虚拟目录

logs目录将映射为nginx容器的日志目录

conf目录里的配置文件将映射为nginx容器的配置文件

进入创建的nginx目录,创建Dockerfile

FROM debian:jessie

MAINTAINER NGINX Docker Maintainers "docker-maint@nginx.com"ENV NGINX_VERSION 1.10.1-1~jessie

RUN apt-key adv --keyserver hkp://pgp.mit.edu:80 --recv-keys 573BFD6B3D8FBC641079A6ABABF5BD827BD9BF62 \
        && echo "deb http://nginx.org/packages/debian/ jessie nginx" >> /etc/apt/sources.list \        && apt-get update \        && apt-get install --no-install-recommends --no-install-suggests -y \
                                                ca-certificates \
                                                nginx=${NGINX_VERSION} \
                                                nginx-module-xslt \
                                                nginx-module-geoip \
                                                nginx-module-image-filter \
                                                nginx-module-perl \
                                                nginx-module-njs \
                                                gettext-base \        && rm -rf /var/lib/apt/lists/*

# forward request and error logs to docker log collector
RUN ln -sf /dev/stdout /var/log/nginx/access.log \
        && ln -sf /dev/stderr /var/log/nginx/error.log

EXPOSE 80 443

CMD ["nginx", "-g", "daemon off;"]

通过Dockerfile创建一个镜像,替换成你自己的名字

docker build -t nginx .

创建完成后,我们可以在本地的镜像列表里查找到刚刚创建的镜像

edualiyun@edualiyun:~/nginx$ docker images nginx
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
nginx               latest              555bbd91e13c        3 days ago          182.8 MB

方法二、docker pull nginx

查找Docker Hub上的nginx镜像

edualiyun@edualiyun:~/nginx$ docker search nginx
NAME                      DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
nginx                     Official build of Nginx.                        3260      [OK]       jwilder/nginx-proxy       Automated Nginx reverse proxy for docker c...   674                  [OK]richarvey/nginx-php-fpm   Container running Nginx + PHP-FPM capable ...   207                  [OK]million12/nginx-php       Nginx + PHP-FPM 5.5, 5.6, 7.0 (NG), CentOS...   67                   [OK]maxexcloo/nginx-php       Docker framework container with Nginx and ...   57                   [OK]webdevops/php-nginx       Nginx with PHP-FPM                              39                   [OK]h3nrik/nginx-ldap         NGINX web server with LDAP/AD, SSL and pro...   27                   [OK]bitnami/nginx             Bitnami nginx Docker Image                      19                   [OK]maxexcloo/nginx           Docker framework container with Nginx inst...   7                    [OK]...

这里我们拉取官方的镜像

edualiyun@edualiyun:~/nginx$ docker pull nginx

等待下载完成后,我们就可以在本地镜像列表里查到REPOSITORY为nginx的镜像。


使用nginx镜像

运行容器

edualiyun@edualiyun:~/nginx$ docker run -p 80:80 --name mynginx -v $PWD/www:/www -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf -v $PWD/logs:/wwwlogs  -d nginx  
45c89fab0bf9ad643bc7ab571f3ccd65379b844498f54a7c8a4e7ca1dc3a2c1eedualiyun@edualiyun:~/nginx$

命令说明:

  • -p 80:80:将容器的80端口映射到主机的80端口

  • --name mynginx:将容器命名为mynginx

  • -v $PWD/www:/www:将主机中当前目录下的www挂载到容器的/www

  • -v $PWD/conf/nginx.conf:/etc/nginx/nginx.conf:将主机中当前目录下的nginx.conf挂载到容器的/etc/nginx/nginx.conf

  • -v $PWD/logs:/wwwlogs:将主机中当前目录下的logs挂载到容器的/wwwlogs

查看容器启动情况

edualiyun@edualiyun:~/nginx$ docker ps
CONTAINER ID        IMAGE        COMMAND                      PORTS                         NAMES45c89fab0bf9        nginx        "nginx -g 'daemon off"  ...  0.0.0.0:80->80/tcp, 443/tcp   mynginx
f2fa96138d71        tomcat       "catalina.sh run"       ...  0.0.0.0:81->8080/tcp          tomcat

通过浏览器访问

访问通过浏览器可以直接访问 8080 端口的 nginx 服务:

进入容器,修改配置文件

docker上启动nginx,并配置修改nginx的配置文件http://t.csdn.cn/Hmd9n

docker exec -it name bash

其中name为nginx所在容器的名字如nginx-test

docker exec -it nginx-test bash

nginx.conf原始配置

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker 安装 Nginx 的相关文章

  • Python使用管道、队列、zeromq进行IPC速度对比测试

    管道 import sys from multiprocessing import Process Pipe import time import result msg list for i in range 100 msg list ap
  • 测试用例设计方法——等价类

    等价类 思路 输入的集合是无穷的 不能全部都覆盖到 依据需求将输入 特殊情况下会考虑输出 划分为若干个等价类 从等价类中挑选一个测试用例 如果这个测试用例通过 则认为所代表的等价类通过 这样就可以用较少的测试用例达到尽可能多的功能覆盖 解决
  • 软件测试笔记(九)- 兼容性测试

    了解如何针对不同的软件应用程序和操作系统交互的问题进行测试 一 兼容性测试综述 随着用户对来自各个厂商的各种类型程序之间共商数据能力和充分利用空间同时执行多个程序能力的要求 测试程序支架能否写作变得越来越重要 软件兼容性测试 softwar
  • 对java中的List进行深拷贝,并进行删除测试

    List
  • 静态分析分析

    软件静态分析概念 静态分析通常是指不执行程序代码而寻找代码中可能存在的错误或评估程序代码的过程 被测对象是各种不软件相关的有必要测试的产物 如文档 源代码等 通过扫描程序正文对程序的数据流和控制流等进行分析 找出系统的缺陷 得出测试报告 不
  • 使用缺省的拷贝构造函数带来的危险性

    我此前另外一篇文章通过类String看拷贝构造函数 赋值函数的作用和区别 对于更深的拷贝构造函数讨论大家可以参见这篇帖子 C 类对象的复制 拷贝构造函数 通过编写类String的拷贝构造函数和赋值函数介绍了一些拷贝构造数 本文着重介绍拷贝构
  • 白盒测试相关的一些知识

    在白盒测试中 可以使用各种测试方法进行测试 下面这篇文章 可能比较枯燥 如果不乐意读 可以先收藏 如果在你的工作中真遇到白盒测试的话 可以回过头再来看看 还是值得读一读 一般来说 白盒测试时要考虑以下5个问题 1 测试中尽量先用自动化工具来
  • android分析monkey的anr

    1 根据anr信息和traces txt判断anr是发生在那个进程中 2 在文件夹logs4android x中搜索 ANR 或者在monkeylog中搜索 anr in 找到发生anr的时间 3 在文件夹logs4android x中搜索
  • 导入 导出 jeesite框架封装

    为什么80 的码农都做不了架构师 gt gt gt JeeSite的Excel导入 导出 支持大数据量 使用annotation最小化配置 介绍 对Apache POI 3 9的简单封装 实现Excel的导出导入功能 使用Annotatio
  • 可连接点对象及示例(二)

    转载请标明是引用于 http blog csdn net chenyujing1234 例子代码 包括客户端与服务端 http www rayfile com zh cn files de82908f 7309 11e1 9db1 0015
  • 优秀软件测试工程师必备的8个能力!-(附思维导图)

    结合自己以往的工作经验 自己梳理出来一些材料 绝对原创 绝对干货 优秀的软件测试工程师必备的 8个能力 作为一名软件工程师 需要的能力并不多 但是要成为一名优秀的软件测试工程师 需要的能力就比较多了 自己整理出来8个方面 每个方面都会分成很
  • Failed to convert property value of type 'java.lang.String' to required type 'int' for property

    junit Spring 测试Service org springframework beans TypeMismatchException Failed to convert property value of type java lan
  • ASP.NET Core 中间件详解及项目实战

    前言 在上篇文章主要介绍了DotNetCore项目状况 本篇文章是我们在开发自己的项目中实际使用的 比较贴合实际应用 算是对中间件的一个深入使用了 不是简单的Hello World 如果你觉得本篇文章对你有用的话 不妨点个 推荐 目录 中间
  • IOS高访新浪微博界面(讲解如何自定义UITableViewCell,处理@#链接 特殊字符)

    在开发过程中 有好多应用都会嵌入新浪微博的界面 今天整理一下代码 首先看界面效果图 Demo下载地址 http download csdn net detail rhljiayou 6760745 思路 首先放一个UITableView 自
  • 自学软件测试需要多久?怎么自学软件测试?自学软件测试可以找到工作吗? 绝对干货!

    一 前言 最近经常有很多朋友问我想要入行软件测试 但是都不知道该怎么学 这里详细的给大家说下 对于0基础的朋友 应该怎么去学习软件测试 学习软件测试有2条路可以选 1 找个靠谱的培训机构去培训啦 你就什么都不用想了 跟着培训结构认真的学习就
  • Fortify 代码扫描安装使用教程

    前言 Fortify 能够提供静态和动态应用程序安全测试技术 以及运行时应用程序监控和保护功能 为实现高效安全监测 Fortify具有源代码安全分析 可精准定位漏洞产生的路径 以及具有1分钟1万行的扫描速度 Fortify SCA 支持丰富
  • IntelliJ IDEA中如何使用JUnit4

    背景 最近参与了一个Anroid医疗项目 其中项目底层有很多基础类及通讯类 而且很多涉及复杂的字节操作还有多线程同步及状态机处理 这样的项目做一下TDD还是必要的 尽量项目前期把风险降低一些 现在的问题是本人使用的是IntelliJ开发的A
  • 网管员牢记 10种较为常见的服务器管理错误

    网管员牢记 10种较为常见的服务器管理错误 网络管理阶层的工作就是保证网络的正常工作 从而使得职工们的工作不被打断 可问题在于事物并非总是按照理想状况发展 事实上经常会出现平地起风波的状况 其间有许多原因 这里我们只讨论10种较为常见的网管
  • Mockito3.x详解

    目录 Mockito 1 简单示例 2 打桩测试 3 参数匹配器 4 调用次数验证 5 通过打桩为无返回值函数抛出异常 6 验证调用顺序 7 验证从未发生过的交互
  • ASTM D6147测定压缩情况下硫化橡胶和热塑弹性体作用力衰减 (应力松弛) 的标准试验方法

    标准名称 ASTM D6147 Standard Test Method for Vulcanized Rubber and Thermoplastic Elastomer Determination of Force Decay Stre

随机推荐

  • 睿智的目标检测51——Tensorflow2搭建yolo3目标检测平台

    睿智的目标检测51 Tensorflow2搭建yolo3目标检测平台 学习前言 源码下载 YoloV3实现思路 一 整体结构解析 二 网络结构解析 1 主干网络Darknet53介绍 2 构建FPN特征金字塔进行加强特征提取 3 利用Yol
  • java try的用法_Java中try、catch的使用方法

    Java中有两种处理异常的方式 分别是用throws抛出异常 用try catch捕获异常 try catch 在Java try catch语句的语法格式 try 代码块 catch Exception1 e 抛出异常后所要进行的操作 当
  • ElasticSearch最佳入门实践(五十八)搜索相关参数梳理以及bouncing results问题解决方案

    1 preference 决定了哪些shard会被用来执行搜索操作 primary primary first local only node xyz prefer node xyz shards 2 3 bouncing results问
  • 如何在SQL查询中文列

    背景介绍 需求背景 第三方提供视图 查询该视图信息 列名采取中文形式 例如 视图名V Test 姓名 性别 工作年限 年 张三 男 4 李四 女 1 复现步骤 Navicat配置Sql Server 因为未接触过中文列名 所以简单查了下 可
  • 如何向icloud上传文件_怎么把文件放进苹果icloud

    展开全部 将文件放入苹果62616964757a686964616fe58685e5aeb931333365653932iCloud的方法很多 介绍以下三种方法供参考 方法一 手机 通过苹果手机直接存储到iCloud 1 在苹果应用商店 A
  • kali 远程登陆提示 拒绝访问(access denied)

    1 今天配置kali远程登陆 配置好后登陆发现输入密码对的 但是还是拒绝访问 access denied 2 后来发现是配置在 etc ssh sshd config 时候 配错了 把 PermitRootLogin without pas
  • ⛳ Class.forName()方法

    目录 Class forName 方法 特点 举例 Class forName 方法 Class forName 是Java中的一个反射方法 用于根据类的完整限定名 fully qualified name 加载类并返回对应的Class对象
  • 调整数组顺序使奇数位于偶数前面(java)

    一 问题描述 输入一个整数数组 实现一个函数来调整该数组中数字的顺序 使得所有的奇数位于数组的前半部分 所有的偶数位于位于数组的后半部分 并保证奇数和奇数 偶数和偶数之间的相对位置不变 二 算法分析 给定一个数组array 目标 调整数组中
  • java 枚举类使用反射

    目录 前言 一 枚举类 二 反射获取枚举 三 反射调用枚举方法 前言 跟普通类使用反射基本一样 一 枚举类 public enum OperateType add 添加 0 delete 删除 1 select 查询 2 update 修改
  • Python Pandas 对列/行 Column/Row 进行选择,增加,删除操作

    Pandas 的列 行操作 一 列操作 1 1 选择列 1 2 增加列 1 3 删除列 del 和 pop 函数 二 行操作 2 1 选择行 2 1 1 通过 label 选择行 loc 函数 2 1 2 通过序号选择行 iloc 函数 2
  • 华为云Classroom赋能--面向高校学生的Toolkit系列实践培训

    Classroom培训课程系列 ToolKit的专题培训 Classroom包含实验系列 Toolkit语音合成实验 Toolkit系列培训课程简介 什么是Toolkit Huawei Cloud Toolkit中文名是华为云开发者插件 是
  • 针对-128到127之间的数据,做了一个数据缓冲池

    package test import java util HashMap import java util HashSet import java util Map import java util Set import org apac
  • 模板类中友元函数的声明与定义

    cpp 全部在Test h这个头文件中 ifndef TEST H define TEST H template
  • 数据如何赋能?

    该问题已同步到小程序 全栈面试题 问题 大家经常动不动就提到数据赋能 那么数据是如何为业务赋能的呢 就此问题 各位大佬们展开了激烈的讨论 讨论 congrats 对于中大型企业 数据已经成为了业务展开工作的基本构成部分了 比如每天运营 产品
  • 10、MyBatis的自动生成代码、PageHelper分页插件

    文章目录 代码生成 方式一 官方jar 方式二 IDEA 插件及其应用 PageHelper 代码生成 方式一 官方jar 为了简化MyBatis的编写 官方推出了一个工具 mybatis generator Java编写的 通过这个工具可
  • log4j的介绍及使用

    一 Log4j简介 Log4j有三个主要的组件 Loggers 记录器 Appenders 输出源 和Layouts 布局 这里可简单理解为日志类别 日志要输出的地方和日志以何种形式输出 综合使用这三个组件可以轻松地记录信息的类型和级别 并
  • SingalR自托管(self-host)实例

    实例说明 Microsoft AspNet SignalR SelfHost 用于创建自托管服务器端 Microsoft AspNet SignalR JS 用于创建Web浏览器客户端 Microsoft AspNet SignalR Cl
  • 图解通信原理与案例分析-32:物流仓储、智能交通中的RFID通信技术详解

    前言 RFID射频身份识别 是一个非常成熟的通信技术 在仓储物流 交通运输等行业有广泛的应用 本文就将介绍RFID的通信原理 目录 第1章 RFID射频身份识别概述 第2章 RFID网络架构 2 1 RFID通信无线通信 2 2 RFID系
  • pcie总线协议入门基础知识

    1 PCIe基础知识 PCI Express是一种高速串行计算机扩展总线标准 它原来的名称为 3GIO 是由英特尔在2001年提出的 旨在替代旧的PCI PCI X和AGP总线标准 与大多数总线一样 PCIe总线也包括电气属性和协议组成两部
  • Docker 安装 Nginx

    方法一 通过 Dockerfile构建 创建Dockerfile 首先 创建目录nginx 用于存放后面的相关东西 edualiyun edualiyun mkdir p nginx www nginx logs nginx conf ww