Docker安装Nginx

目录

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

两个容器在同一网段

1.创建自定义网络

 2.创建两个容器在同一网络

 3.查看网络地址

两个容器在不同网段

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

2 查看自定义网络mynet状态

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

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

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

 6 查看网络信息

 7 查看容器详细信息

 二,Docker安装Nginx

 nginx是什么

安装步骤

1.搜索nginx镜像

  2.拉取镜像

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

4 根据nginx镜像创建nginx容器

部署前端项目

创建nginx容器

上传项目 

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

2.进入该目录 解压 


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

两个容器在同一网段

1.创建自定义网络

 docker network create --driver bridge --subnet 192.168.0.1/16 --gateway 192.168.0.1 mynet

       参数说明
       --driver bridge  设置网络模式
       --subnet 192.168.0.1/16  设置子网
       --gateway 192.168.0.1 设置网关
       mynet  自定义网络的名称

 2.创建两个容器在同一网络

 docker run -di --name c1 --net=mynet centos:7

 3.查看网络地址

docker network inspect mynet

可以看到有刚刚所创建的两个容器

 我们试一下进入c1能不能ping c2

 是可以ping的通的,如果没有ping通的话是不会有响应的,反过来c2 也能ping c1,这里就不演示了。当然,也可以不进入容器去ping

docker exec -it c1 ping c2

两个容器在不同网段

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

docker run -di --name c3 centos:7

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

2 查看自定义网络mynet状态

docker network inspect mynet

有c1,c2

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

docker network inspect bridge 

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

我们使用c1去ping c3目前肯定是ping不通的

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

docker network connect mynet c3

 尝试一下ping c3

ping通了,为什么成功了呢?原因:容器c3具有两个ip 

 6 查看网络信息

 docker network inspect mynet

 7 查看容器详细信息

docker inspect c3

 二,Docker安装Nginx

 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镜像创建nginx容器

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

简单测试nginx镜像

使用docker内置网络bridge

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

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

部署前端项目

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命令即需要下载

 下载后进行解压

 现在即可成功访问!!!

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
要在Docker安装Nginx,可以按照以下步骤进行操作: 1. 首先,查看可用的Nginx版本。可以访问Nginx镜像库地址https://hub.docker.com/_/nginx?tab=tags来获取可用的版本信息。 2. 下载Nginx镜像。可以使用命令`docker pull nginx`来下载最新版的Nginx镜像。也可以使用`docker pull nginx:xxx`来下载指定版本的Nginx镜像,其中`xxx`是具体的版本号。 3. 创建Nginx容器。可以使用以下命令来创建Nginx容器: ``` docker run \ -p 9002:80 \ --name nginx \ -v /home/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \ -v /home/nginx/conf/conf.d:/etc/nginx/conf.d \ -v /home/nginx/log:/var/log/nginx \ -v /home/nginx/html:/usr/share/nginx/html \ -d nginx:latest ``` 这个命令会启动一个名为`nginx`的容器,将容器的9002端口映射到主机的80端口,同时挂载了配置文件、日志文件和内容文件的目录。 这样,你就成功安装Docker中的Nginx。你可以通过访问`http://localhost:9002`来验证Nginx是否正常运行。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Docker 安装 Nginx](https://download.csdn.net/download/weixin_38698863/14893474)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Docker 安装 Nginx 容器 (完整详细版)](https://blog.csdn.net/BThinker/article/details/123507820)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

歐陽。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值