我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Docker配置nginx

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Docker配置nginx

1.Docker安装nginx

  • 安装的命令
sudo docker search nginxdocker pull nginx
  • 查看是否安装
docker images

在这里插入图片描述

  • 运行测试nginx
docker run --name nginx-test -p 9091:80 -d nginx--name  #给你启动的容器起个名字,以后可以使用这个名字启动或者停止容器-p #映射端口,将docker宿主机的9091端口和容器的80端口进行绑定-v #挂载文件用的-d #表示启动的是哪个镜像。

在这里插入图片描述
在这里插入图片描述

2.Nginx服务的配置和部署

  • 为什么需要做文件的映射?

我们在使用容器的过程中需,有时候需要对容器中的文件进行修改管理,如果不做文件映射的化,我们使用docker exec -it 容器ID/容器名 /bin/bash 才能进入nginx中的文件里面如图
在这里插入图片描述
如果把关键文件映射到主机上,那么就可以在主机中进行修改而不必进入文件当中才进行修改了。

  • 需要在主机上建立相应的关键文件目录
  • 在home下创建一个docker文件夹,用来专门存docker容器的映射文件。
  • 在docker下创建一个nginx的文件夹,用于存nginx的映射文件。
  • 在nginx下创建三个关键的映射文件。
    www文件映射www目录,也就是网页目录。
    logs文件映射日志目录。
    conf文件映射配置目录
    在这里插入图片描述
  • 先在容器中拷贝配置文件
docker cp 容器ID:/etc/nginx/nginx.conf /home/docker/nginx/conf#注意此时的容器必须是运行的

在这里插入图片描述

  • docker中nginx与主机文件映射规则如下
主机                  docker/home/docker/nginx/www                           /usr/share/nginx/html #网页文件/home/docker/nginx/conf/nginx.conf               /etc/nginx/nginx.conf#配置文件/home/docker/nginx/logs                          /var/log/nginx#日志文件
  • 关闭之前运行的容器
docker stop 容器IDdocker rm 容器ID
  • 运行nginx,同时进行文件挂载
docker run -d -p 9091:80  --name nginx-test -v /home/docker/nginx/www:/usr/share/nginx/html -v /home/docker/nginx/conf/nginx.conf:/etc/nginx/nginx.conf -v /home/docker/nginx/logs:/var/log/nginx nginx

在这里插入图片描述

  • 在www目录下建立一个html文件
    在这里插入图片描述
  • 访问nginx
    在这里插入图片描述

3.Nginx的普通配置

通过nginx为多为个域名配置服务,使得通过浏览器可以访问到相应的域名。

3.1 创建html文件

  • 在映射到主机下的/home/docker/nginx/www下创建html文件或者域名的文件夹

在这里插入图片描述

其中blog.hklblog.net和www.hklblog.com是存放不同域名访问的文件路劲。里面都有对应的index.html

3.2 修改host文件

sudo gedit /etc/hosts

在这里插入图片描述

3.3 修改nginx.conf文件

提醒 「路径问题」

  • 这里需要提醒一下,在前面我们已经把nginx中的配置文件映射到主机目录下,我们在主机目录下修改了/home/docker/nginx/www的文件,同时nginx容器中的/usr/share/nginx/html下的文件有会有相同的变化。但是在配置文件中使用的路径得是nginx的,而不应该是主机的路径。
  • 打开主机映射的nginx配置文件
sudo gedit /home/docker/nginx/conf/nginx.conf 

在这里插入图片描述

server中的配置解释参考如下:

在这里插入图片描述

  • 重启docker
docker ps#获取容器的IDdocker restart 容器ID

在这里插入图片描述

  • 在浏览器通过www.hklblog.com
    在这里插入图片描述

  • 以同样的方式为blog,hklblog.net配置服务
    「修改nginx.conf」–「添加一个server」–「重启docker」–「浏览器域名访问」
    在这里插入图片描述

  • 浏览器通过域名访问
    在这里插入图片描述

  • 错误心得

当有时启动容器,通过docker ps 发现容器并没有启动,那么通过docker ps -a可查看容器的状态:
created(已创建)
restarting(重启中)
running(运行中)
removing(迁移中)
paused(暂停)
exited(停止)
dead(死亡)
然后通过查看日志:docker logs 容器ID
可以从中发现未能启动的原因。

在这里插入图片描述

4.代理模式

4.1 正向代理

  • 描述「正向代理」

客户端<---->代理服务器<---->服务器
架设在客户机与目标主机之间,只用于代理内部网络对Internet的连接请求,客户机必须指定代理服务器,并将原本要直接发送到web服务器上的http请求发送到代理服务器中。

  • 迁移 租房 「正向代理」

A(租客=客户端),B(中介=代理服务器),C(房东=服务器)
A想要组C的房子,但是A并不认识C所以租不到,但是B认识C,A找B帮忙租到了C的房子。
此过程C是不知到是A租了房子,只知道房子租给了B,但是A知道是租C的房子。所以对客户端是透明的。

4.2 反向代理

  • 描述 「反向代理」

客户端—>代理服务器<—>服务器
反向代理服务器架设在服务端,通过缓冲经常被请求的页面来缓解服务器的工作量,将客户机请求转发给内部网络上的目标服务器;并将从服务器上得到的结果返回给Internet上请求连接的客户端,此时代理服务器与目标主机一起对外表现为一个服务器。正式反向代理对真正的服务器起到了保护作用,所以反向代理比较流行。

  • 迁移 租房 「反向代理」

A (租客=客户端),B(中介=代理服务器),C(服务器=房东)
A想租房子,B直接把房子租给了它。但实际上C才是房东,B租房给A的这个过程中,A并不知道谁是真正的房东。

4.3 配置反向代理

  • 案例 「代理访问」

通过访问blog.hklblog.net,来访问www.baidu.com

  • 操作

只需要在nginx的配置当中的server下的location中添加proxy_pass:https:www.baidu.com

 #配置服务blog.hklblog.net    server{#配置虚拟主机的相关参数,一个http块有多个serverlisten80;#监听端口server_nameblog.hklblog.net;#配置域名root/usr/share/nginx/html/blog.hklblog.net;#配置根目录location / {#配置请求的路由,以及各种页面的处理情况root/usr/share/nginx/html/blog.hklblog.net;#根目录index index.html index.htm;#默认首页proxy_pass https://www.baidu.com;#配置反向代理} }
  • 通过浏览器访问
    在这里插入图片描述

来源地址:https://blog.csdn.net/qq_45031509/article/details/128043584

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Docker配置nginx

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Docker配置nginx

1.Docker安装nginx 安装的命令 sudo docker search nginxdocker pull nginx 查看是否安装 docker images 运行测试nginx docker run --name nginx-
2023-08-20

Docker容器配置Nginx实例分享

这篇文章主要介绍了Docker容器配置Nginx实例分享的相关资料,需要的朋友可以参考下作为目前最火的应用,Docker 确实存在着其独到之处,无论是程序猿还是运维都应该听说过 Docker 的大名,Docker 已经走过了许多的坑,目前最
2023-06-05

Docker怎么安装Nginx并修改Nginx配置文件

这篇文章主要介绍了Docker怎么安装Nginx并修改Nginx配置文件的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Docker怎么安装Nginx并修改Nginx配置文件文章都会有所收获,下面我们一起来看看吧
2023-07-05

Nginx作为Docker容器的Web服务器配置详解(在Docker中如何配置Nginx作为Web服务器?)

在Docker中配置Nginx作为Web服务器涉及以下步骤:创建包含Nginx和依赖项的Docker镜像。构建镜像并运行Nginx容器,将容器端口映射到主机端口。优化Nginx配置,包括虚拟主机、根目录、错误页面、SSL/TLS、缓存等。使用日志记录和监控工具管理和监控容器。Nginx配置的优化可以提高性能、安全性、可用性和可管理性。通过Nginx的强大功能和Docker的轻量级,可以轻松部署和托管可扩展、健壮且安全的Web应用程序。
Nginx作为Docker容器的Web服务器配置详解(在Docker中如何配置Nginx作为Web服务器?)
2024-04-02

Nginx在Docker中的文件上传配置与限制(如何在Docker中为Nginx配置文件上传功能?)

在Docker中配置Nginx文件上传时,需要进行特殊设置。在Nginx配置文件中调整上传文件大小限制、临时目录和存放目录。使用-v参数将主机目录挂载到容器中,作为上传文件存放目录。确保目录具有适当权限。测试文件上传功能并注意文件大小和类型限制、临时目录大小和安全考虑。优化性能调整缓冲大小和超时设置。
Nginx在Docker中的文件上传配置与限制(如何在Docker中为Nginx配置文件上传功能?)
2024-04-02

Nginx作为Docker容器的反向代理配置指南(在Docker中如何配置Nginx作为反向代理?)

本指南详细介绍如何配置Nginx作为Docker容器的反向代理。它包括准备工作、创建反向代理容器、配置应用程序容器、测试反向代理、高级配置和故障排除。配置涉及创建nginx.conf文件、指定反向代理设置和构建容器。高级配置包括SSL/TLS加密、负载均衡、健康检查和缓存。故障排除涉及检查日志、验证容器连接和检查Nginx配置。
Nginx作为Docker容器的反向代理配置指南(在Docker中如何配置Nginx作为反向代理?)
2024-04-02

Docker安装Nginx并修改Nginx配置文件的方法详解

这篇文章主要给大家介绍了关于Docker安装Nginx并修改Nginx配置文件的相关资料,文中通过实例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
2023-02-22

Docker中Nginx配置文件的管理与动态更新(如何在Docker中有效管理Nginx的配置文件?)

Docker中有效管理Nginx配置文件的策略包括:静态配置:配置文件挂载Dockerfile配置动态配置:环境变量ConfigMaps和Secrets热重载管理策略:CI/CD版本控制自动化工具最佳实践:模块化配置注释测试和验证监控和警报
Docker中Nginx配置文件的管理与动态更新(如何在Docker中有效管理Nginx的配置文件?)
2024-04-02

Nginx在Docker中的URL重写与重定向配置(如何在Docker中为Nginx配置URL重写与重定向?)

通过Docker配置Nginx时,可以使用nginx.conf配置文件对URL进行重写和重定向。使用rewrite指令重写URL,使用return指令重定向URL。将配置文件挂载到Docker容器中并重新启动Nginx服务以应用更改。确保规则顺序正确,并考虑使用其他指令(如try_files)和日志记录功能。
Nginx在Docker中的URL重写与重定向配置(如何在Docker中为Nginx配置URL重写与重定向?)
2024-04-02

Docker容器化Nginx的端口映射与网络配置(如何在Docker中配置Nginx的端口映射和网络?)

通过Docker容器化Nginx可增强隔离性、可移植性和可扩展性。端口映射允许将容器端口与主机端口关联,而网络配置可定义容器的网络访问属性。默认网络模式为bridge,但host模式可共享主机的网络接口。其他网络配置选项包括别名、暴露端口、链接以及DNS服务器和域的指定。
Docker容器化Nginx的端口映射与网络配置(如何在Docker中配置Nginx的端口映射和网络?)
2024-04-02

Nginx在Docker中的HTTP/2支持配置(如何在Docker中为Nginx启用HTTP/2支持?)

通过在Docker中配置Nginx,可启用HTTP/2支持,从而提升网站性能和降低延迟。具体步骤包括:创建并编辑配置文件nginx.conf,指定监听端口443及SSL证书。创建Dockerfile,从Nginx镜像构建并复制nginx.conf。构建Docker镜像并运行容器。使用curl命令测试HTTP/2支持。
Nginx在Docker中的HTTP/2支持配置(如何在Docker中为Nginx启用HTTP/2支持?)
2024-04-02

docker中如何通过nginx+confd动态生成配置

小编给大家分享一下docker中如何通过nginx+confd动态生成配置,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!当我们项目越来越多时手动去服务器修改nginx配置是一件很麻烦而且可能出错的事情。我们可以通过ngin
2023-06-29
2023-08-31

Docker容器中的Nginx安全头设置与防护(如何在Docker中为Nginx配置安全响应头?)

在Docker容器中为Nginx配置安全响应头至关重要,步骤包括:编辑配置文件、添加安全响应头、保存配置和重启Nginx。安全响应头包括:STS:强制HTTPS连接XFO:防止点击劫持XCO:防止MIME嗅探XXP:启用XSS过滤器CSP:限制恶意内容执行
Docker容器中的Nginx安全头设置与防护(如何在Docker中为Nginx配置安全响应头?)
2024-04-02

编程热搜

目录