Docker中部署Nginx服务

Posted 运维讲堂

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Docker中部署Nginx服务相关的知识,希望对你有一定的参考价值。

在开始之前,我们需要了解一个概念,通常nginx是通过80端口提供的,我们怎样去访问容器中运行的nginx80端口呢?

答案是:我们就需要在运行容器时,设置容器的端口映射.

 

设置容器的端口映射:

run [-P][-p]

我们通过run命令的两个选面来实现这个功能.

-P(大写p),--publish-all=true|false 默认false

         docker run -P -i -t ubuntu /bin/bash

大写的P将会为容器暴露所有端口进行映射

 

-p(小写p),--publish=[]

小写的p将会为容器暴露的指定端口进行映射.

容器端口映射有4种形式.

形式1

containerPort

         docker run -p 80 -i -t ubuntu /bin/bash

只指定容器的端口,在这种情况下宿主机的端口是随机映射的

 

形式2

Hostport:containerPort

         docker run -p 8080:80 -i -t ubuntu/bin/bash

同时指定宿主机与容器的端口,这样映射就是一一对应的

 

形式3

ip::containerPort

         docker run –p 0.0.0.0:80 -i -t ubuntu/bin/bash

指定宿主机ip与容器的端口,这种情况下宿主机的端口是随机映射的

 

形式4

ip:hostPort:containerPort

         docker run –p 0.0.0.0:8080:80 -i -tubuntu /bin/bash

指定宿主机ip,宿主机端口与容器端口

 

好了,了解上面的知识后我们就可以继续我们的静态网站部署了.以下是我列出部署Nginx服务的步骤.

步骤1.创建映射80端口的交互式容器

步骤2.安装Nginx

步骤3.安装文本编辑器vim

步骤4.创建静态页面

步骤5.运行Nginx服务

步骤6.验证网站访问


正式开始

步骤1.创建映射80端口的交互式容器

步骤2.安装Nginx

注意:在安装nginx之前,需要执行一下apt-getupdate,否则会报如下错误.

Docker中部署Nginx服务

Docker中部署Nginx服务

步骤3.安装文本编辑器vim

Docker中部署Nginx服务

步骤4.创建静态页面

/var/www/html目录下面制作一个index.html内容为I run nginx,I’m in container

Docker中部署Nginx服务

步骤5.运行Nginx服务

Docker中部署Nginx服务

步骤6.验证网站访问

我们使用ctrl+Q+P使交互式的容器,退出并保存到后台一直运行.

退出后,我们查看容器运行状态(状态是UP的,表示在运行中)

Docker中部署Nginx服务

通过容器的ip来访问

我们再通过docker inspect web查看这个web容器获得的ip是什么.

Docker中部署Nginx服务

这是我们再使用curl 172.17.0.2便可以访问到了

Docker中部署Nginx服务


通过宿主机ip来访问

Docker中部署Nginx服务

知识补充:

1.当然对与查看宿主机端口映射情况还可以使用

docker port web命令查看

Docker中部署Nginx服务

这时候我们就可以使用docker port web+docker inspect web便可以获知相关信息了.

 

我们通过前面两条信息,便可以以http://192.168.5.61:32768

以上是关于Docker中部署Nginx服务的主要内容,如果未能解决你的问题,请参考以下文章

云原生之Docker实战使用docker部署nginx服务

Docker中部署Nginx服务

CentOS7 服务器部署服务(nginx, Docker, MySQL, Joplin)

docker初体验:docker部署nginx服务

Docker容器简单部署nginx

Docker Compose 部署Nginx服务实现负载均衡