Docker-Docker安装nginx

news2024/11/25 3:24:19

目录

一,容器之间的相互通信 ping

        1.1 两个容器在同一网段

        1.2 两个容器在不同网段

        二,安装Nginx

2.1 nginx是什么

安装步骤

2.4 部署前端项目

上传项目 步骤


一,容器之间的相互通信 ping

        1.1 两个容器在同一网段

 

 

 

        1.2 两个容器在不同网段

1 使用默认网络模式创建一个c3容器

docker run -di --name c3 centos:7

c1 c2是指定使用自定义网络创建的 而c3并没有指定 也就是默认的bridge模式 不处于统一网络中他们之间是不能互相访问的

2 查看自定义网络mynet状态

有c1,c2

docker network inspect mynet

 3 查看默认的bridge模式中状态 只有c3

docker network inspect bridge

 4 连接失败,控制台出现如下提示

ping: c3: Name or service not known

 5 如何解决此问题呢?向网络mynet中添加容器c3

docker network connect mynet c3

尝试ping

docker exec -it c1 ping c3

 

        为什么成功了呢?原因:容器c3具有两个ip
 6 查看网络信息
        docker network inspect mynet


 7 查看容器详细信息
        docker inspect c3

 

        二,安装Nginx

2.1 nginx是什么

Nginx也是一款服务器,我们常用它做如:反向代理、负载均衡、动态与静态资源的分离的工作, 

反向代理:反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,
  并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个服务器。

 负载均衡:目前大多数的网站都会采用负载均衡手段来针对目前用户的指数级增长来减少对单点服务器的负载压力

   比如目前我们拥有3台真实服务器,我们需要根据相应策略决定什么样的用户请求分配到哪个真实服务器,比如按照轮询的方式,
  用户请求挨个到达代理服务器,此时代理服务器按照第一个请求转发至第一台真实服务器,第二个请求转发到第二个服务器上,依次类推,
  这样可以防止大量的用户请求全部访问到同一台物理机上,单点物理机的性能始终有限的,当然这可能对服务器数据访问时候造成事务性的失效,
  在Web方面可能造成Session访问的问题,这不在本文讨论方面内
  Nginx+tomcat是目前主流的java web架构

安装步骤

 1.搜索nginx镜像

docker search nginx

 2.拉取镜像

docker pull nginx

 3.在宿主机中创建挂载目录

mkdir -p /data/nginx/{conf,conf.d,html,log}

 注1:因为在nginx镜像中没有安装vi或vim编辑器(安装又太麻烦了),无法编辑nginx配置文     件,所以直接通过数据卷挂载上去更加方便
      注2:将nginx配置文件nginx.conf上传到宿主机的挂载目录“/data/nginx/conf”下
      注3:将vue前端项目打包后上传到宿主机的挂载目录“/data/nginx/html”下并解压
               unzip dist.zip
      注4:nginx配置文件相关调试命令可参考附录二

4 根据nginx镜像创建nginx容器

(测试nginx的安装与访问,并没有发布任何的java或vue项目,最后此容器要删除的)

简单测试nginx镜像

使用docker内置网络bridge

  docker run \
       --name mynginx \
       -d -p 80:80 \
       nginx:latest

下一步我们把这个删除掉 然后创建一个含有挂载的nginx

2.4 部署前端项目

docker实战之通过nginx镜像来部署SPA项目
    nginx+tomcat实现反向代理及均衡
    nginx+html静态服务器

创建nginx容器

docker run \
       --name mynginx \
       -d -p 80:80 \
       -v /data/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
       -v /data/nginx/log:/var/log/nginx \
       -v /data/nginx/html:/usr/share/nginx/html \
       nginx:latest

 注意:如果报这个错的话就是不存在要挂载的目录

 添加文件

再次执行

 浏览器进行访问 无效

原因: 此时注意看我们的挂载信息

 查看宿主机目录中的文件

 cd /usr/share/nginx/html

什么都没有 

此时我们再进入我们的配置文件中进行查看 

上传项目 步骤

1.上传到与访问的网址的目录挂载的宿主机目录

 

 2.进入该目录 解压

解压zip文件命令

unzip + 文件全名

没有unzip命令即需要下载

下载后再次解压

 现在即可成功访问!!!

 本期内容到此结束 下期将为大家带来《Nacos的持久化和集群部署

下期见!

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/89368.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

旋转机械 | 基于ANSYS WB平台的滑动轴承分析工具(一)

导读:本文主要针对Tribo-X inside ANSYS的功能及各方向应用实例进行介绍,限于篇幅关系会分五篇进行介绍,第一篇主要结合软件的需求、理论、功能及应用方向进行介绍,第二篇至第五篇将结合具体应用方向的示例进行介绍。本篇为第一篇…

软件测试工程师的简历项目经验该怎么写?

想要找一份高薪的软件测试工作,简历项目必不可少(即使是应届生,你也要写上实习项目)。所以很多自学的朋友找工作时会碰到一个令人颇感绝望的拦路虎:个人并没有实际的项目工作经验怎么办? 怎么办&#xff1…

【PS】画笔工具

目录 画直线 拾取颜色 改变画笔大小 改变画笔硬度 不透明度 流量 画笔预设 自定义图片做笔刷 工具预设 画笔面板 画直线 Shift键可画出直线只用点两个点就画出直线:先点一个点,按住shift,再在别处点一点,这时候直线就形…

Python 中如何使用pybind11调用C++

Python 中如何使用pybind11调用C1. pybind11简介与环境安装2. 求和函数3. STL和python内建数据类型的对应关系3.1 **返回vector**3.2 **返回struct**4. pybind11与numpy图像数据接口和速度对比:以图像rgb转化为gray的例子Reference: 混合编程:如何用pyb…

银联卡8583协议小额免密免签交易总结

之前做过金融支付这块儿。到过北京石景山区银行卡检测中心过检PBOC的level2认证,去过上海银联总部和湖南银联对接银联卡和扫码支付。对金融支付和卡交易这块儿熟悉。现在这块儿知识用不上了总结下留作备忘,同时分享给有需要的人。 关于免密免…

【云原生 | Kubernetes 实战】12、K8s 四层代理 Service 入门到企业实战应用(下)

目录 一、创建 Service:type 类型是 NodePort 1.1 创建一个 pod 资源 1.2 创建 service,代理 pod 在集群外访问 service: 数据转发流程: 二、创建 Service:type 类型是 ExternalName 2.1 创建 pod 2.2 创建…

相关数据库

h2 需要用以下 初始化一下 第一次启动需要加入下面代码 h2 创建表 可以直接用jdbc 然后进行测试 不需要链接mysql redis 想要启动redis 现在 该目录下 输入俩个cmd 一个cmd 输入redis-cli 到启动太 输入 shutdown 然后再另一个cmd 输入 redis-server.exe redis.windows.con…

如何利用电商模式,灵活结合当地产品生态全力助农,实现乡村振兴

随着互联网时代的发展,人们的消费观念和消费习惯逐渐被改变,绿色环保观念深入人心,人们加大了对农产品的高要求和高需求,同时,近年来国家对农业的重视和政策支持,促进了农产品电商的蓬勃发展,已…

YOLOV7学习记录之原理+代码介绍

博主计划做一个目标检测跟踪项目,考虑使用YOLO系列模型来作为目标检测器,如今YOLO项目已经更新到了YOLOV7版本,因此便来学习一下相关原理,完成相关实验工作。 论文链接:https://arxiv.org/abs/2207.02696 网络结构 YO…

【字节码】Java Instrumentation 简介 以及 ASM 组合案例

1.概述 本文来自:深入理解JVM字节码 并且对其进行补充。 2.Java Instrumentation简介 JDK从1.5版本开始引人了java.lang.instrument 包,开发者可以更方便的实现字节码增强。其核心功能由java.lang.instrument.Instrumentation 提供,这个接口的方法提供了注册类文件转换器…

python列表添加元素append(),extend(),insert(),+list的区别及说明

这篇文章主要介绍了python列表添加元素append(),extend(), insert(),list的区别及说明,具有很好的参考价值,希望对大家有所帮助。 列表添加元素append(),extend(),insert(),list区别 回忆初学python的时候,对列表list添加元素时&#xff0c…

[附源码]Nodejs计算机毕业设计基于web技术的米其林轮胎管理系统Express(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程。欢迎交流 项目运行 环境配置: Node.js Vscode Mysql5.7 HBuilderXNavicat11VueExpress。 项目技术: Express框架 Node.js Vue 等等组成,B/S模式 Vscode管理前后端分…

C# 程序的组织

一 程序的组织 ① 名字控件 程序的逻辑组织; ② 嵌套类型 类中嵌套类型; ③ 程序集 程序的物理组织; 二 名字空间 1 名字控件的概念 逻辑划分;避免名字冲突; 2 名字空间的声明 namespace xxx.xxxxx{} 可嵌套 3 …

Jmeter 性能测试之阶梯式场景、波浪式场景

推荐阅读: [内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取~ Python自动化测试全栈性能测试全栈,挑战年薪40W 1 阶梯式场景(负载测试) 该场景主要应用在负载测试里面,通过设定一定的并发线程数…

云游戏拉开产业化大幕

配图来自Canva可画 在过去十多年间,音乐和视频已经完成了线下存储到线上串流的变迁,VCD、CD、MP3也早已成为有历史记忆的收藏品,然而游戏业的“革命”——云游戏行业才刚刚开始。 尤其是随着5G和边缘计算的发展,更高的带宽、更低…

cubeIDE开发, 定时器TIM与外部中断NVIC实践案例

一、定时器功能 1.1 定时器分类 STM32 的定时器分为高级定时器、 通用定时器 、基本定时器三种。 这三个定时器成上下级的关系,即基本定时器有的功能通用定时器都有,而且还增加了向下、向上/向下计数器、PWM生成、输出比较、输入捕获等功能;而…

高并发编程之多线程锁和CallableFuture 接口

5 多线程锁 5.1 锁的八个问题演示 package com.xingchen.sync;import java.util.concurrent.TimeUnit;class Phone {public static synchronized void sendSMS() throws Exception {//停留4秒TimeUnit.SECONDS.sleep(4);System.out.println("------sendSMS");}publ…

AXI协议规范超详细中文总结版

link AXI协议规范中文翻译版 来源:https://github.com/lizhirui/AXI_spec_chinese 综述 本文参考分析整理总结了AMBA AXI and ACE Protocol Specification文档的AXI总线协议规范部分,错误之处欢迎指出。 AMBA AXI协议支持高性能高频的系统设计&#xff0…

【视觉高级篇】25 # 如何用法线贴图模拟真实物体表面

说明 【跟月影学可视化】学习笔记。 什么是法线贴图? 法线贴图就是在原物体的凹凸表面的每个点上均作法线,通过RGB颜色通道来标记法线的方向,你可以把它理解成与原凹凸表面平行的另一个不同的表面,但实际上它又只是一个光滑的平…

巧用 Chrome:网络知多少

开发者如数家珍的工具中,Chrome 想必是众多人心目中的白月光,倒也不是它有多么优秀,而是多亏同行浏览器们的衬托。其开源的内核 Chromium 也成就众多养家糊口的岗位,比如 Edge、Opera、QQ 浏览器、360 浏览器等等国内外一票浏览器…