当前位置: 首页 > wzjs >正文

导航网站的建设个人如何缴纳社保

导航网站的建设,个人如何缴纳社保,做导购网站多少钱,免费的企业邮箱系列文章目录 Docker 搭建 Nginx 服务器 系列文章目录前言一、准备工作二、设置 Nginx 容器的目录结构三、启动一个临时的 Nginx 容器来复制配置文件四、复制 Nginx 配置文件到本地目录五、删除临时 Nginx 容器六、创建并运行 Nginx 容器,挂载本地目录七、修改 ngin…

系列文章目录

Docker 搭建 Nginx 服务器

  • 系列文章目录
  • 前言
  • 一、准备工作
  • 二、设置 Nginx 容器的目录结构
  • 三、启动一个临时的 Nginx 容器来复制配置文件
  • 四、复制 Nginx 配置文件到本地目录
  • 五、删除临时 Nginx 容器
  • 六、创建并运行 Nginx 容器,挂载本地目录
  • 七、修改 `nginx.conf` 文件配置监听端口
  • 八、端口配置:Host 网络模式 vs Port 映射模式
  • 九、查看日志和检查容器状态
  • 十、访问 Nginx 服务
  • 总结


前言

在现代 Web 开发中,Nginx 是一个广泛使用的高性能 Web 服务器,它不仅可以用于反向代理,还能作为负载均衡器、HTTP 缓存等。通过 Docker 部署 Nginx,不仅能够简化安装过程,还能轻松进行配置和管理。

本篇文章将指导你通过 Docker 快速搭建一个 Nginx 环境,并讲解如何修改配置文件以定制化你的服务器设置。


一、准备工作

首先,确保你的系统上已经安装了 Docker。

Linux上进行Docker安装有两种方式:

  1. Docker自动化安装
  2. Docker手动安装

可以根据该文章的步骤进行安装:https://blog.csdn.net/weixin_44876263/article/details/136714078?spm=1001.2014.3001.5502

二、设置 Nginx 容器的目录结构

为了便于管理,我们首先创建一个目录结构,用于存放 Nginx 配置文件、日志文件和 HTML 文件。

# 安装路径
DIR="/opt/docker/demo"
DOCKER_NAME="docker-nginx"# 创建目录结构
mkdir -p "$DIR/nginx/conf"
mkdir -p "$DIR/nginx/log"
mkdir -p "$DIR/nginx/html"
  • conf:存放 Nginx 的主配置文件和自定义配置文件。
  • log:存放 Nginx 的日志文件。
  • html:存放静态网站文件。

三、启动一个临时的 Nginx 容器来复制配置文件

我们需要一个基础的 Nginx 配置文件,Docker 官方镜像已经内置了标准配置文件。为了方便地获取并修改这些配置文件,我们首先启动一个临时的 Nginx 容器。

# 启动一个临时的 nginx 容器来复制配置文件
docker run --name nginx_test -p 9011:80 -d nginx:stable-alpine

这个命令会启动一个 nginx:stable-alpine 容器,并将其 80 端口映射到宿主机的 9011 端口。我们可以通过访问 http://localhost:9011 来查看默认的 Nginx 欢迎页面。

四、复制 Nginx 配置文件到本地目录

接下来,我们将容器内的 Nginx 配置文件复制到本地,以便进行自定义修改。使用以下命令将 nginx.conf 文件和 conf.d 配置目录复制到宿主机的 $DIR/nginx/conf 目录中:

# 复制 nginx 配置文件到本地目录
docker cp nginx_test:/etc/nginx/nginx.conf "$DIR/nginx/conf/nginx.conf"
docker cp nginx_test:/etc/nginx/conf.d "$DIR/nginx/conf/conf.d"

这样,我们就获取到了 Nginx 的配置文件,并且可以根据需要进行修改。

五、删除临时 Nginx 容器

复制完配置文件后,我们不再需要这个临时的 Nginx 容器,因此可以将其删除:

# 删除临时 nginx 容器
docker rm -f nginx_test

六、创建并运行 Nginx 容器,挂载本地目录

现在,我们可以使用自己的配置文件来启动一个持久化的 Nginx 容器。通过将本地目录挂载到容器中,我们可以确保配置文件、日志和网站文件持久化存储在宿主机上。

以下是启动 Nginx 容器的命令:

docker run -d \--restart=always \--name "$DOCKER_NAME" \--network host \-v "$DIR/nginx/conf/nginx.conf:/etc/nginx/nginx.conf" \-v "$DIR/nginx/conf/conf.d:/etc/nginx/conf.d" \-v "$DIR/nginx/log:/var/log/nginx" \-v "$DIR/nginx/html:/opt/html" \nginx:stable-alpine

解释各个参数:

  • -d:后台运行容器。
  • --restart=always:容器在崩溃或系统重启后自动重启。
  • --name "$DOCKER_NAME":容器的名称为 docker-nginx
  • --network host:容器将使用宿主机的网络栈。
  • -v "$DIR/nginx/conf/nginx.conf:/etc/nginx/nginx.conf":挂载自定义的 nginx.conf 配置文件到容器中。
  • -v "$DIR/nginx/conf/conf.d:/etc/nginx/conf.d":挂载自定义的配置目录。
  • -v "$DIR/nginx/log:/var/log/nginx":挂载日志目录,便于查看和管理日志。
  • -v "$DIR/nginx/html:/opt/html":挂载网站文件目录,用于存放静态网页。

七、修改 nginx.conf 文件配置监听端口

如果你希望更改 Nginx 的默认端口,可以在修改的 nginx.conf 文件中进行配置。在 nginx.conf 中,你可以找到以下内容:

server {listen 80;server_name localhost;client_max_body_size 100m;access_log /var/log/nginx/access.log main;error_log /var/log/nginx/error.log notice;#测试location /demo/testme {default_type text/html;return 200 "demo success 80!";}#首页静态资源location /demo {autoindex off; # 禁止目录索引server_tokens off; # 在http{}块中隐藏服务器版本号client_max_body_size 100m;alias /opt/html/dist;index index.html index.htm;try_files $uri $uri/ /demo/index.html;  #front为路由 而不是目录}
}

listen 80; 改为你需要的端口(例如 listen 8080;)。这样,Nginx 就会监听新的端口。

八、端口配置:Host 网络模式 vs Port 映射模式

在 Docker 中,容器的端口配置是非常关键的。Nginx 容器支持两种主要的端口配置方式:Host 网络模式Port 映射模式

  1. Host 网络模式

    在 Docker 中使用 --network host 时,容器将共享宿主机的网络栈,这意味着容器直接使用宿主机的 IP 地址和端口来暴露服务。通过这种方式,容器会使用宿主机的端口 80 来提供服务。

    配置命令:

    docker run -d \--restart=always \--name "$DOCKER_NAME" \--network host \-v "$DIR/nginx/conf/nginx.conf:/etc/nginx/nginx.conf" \-v "$DIR/nginx/conf/conf.d:/etc/nginx/conf.d" \-v "$DIR/nginx/log:/var/log/nginx" \-v "$DIR/nginx/html:/opt/html" \nginx:stable-alpine
    
    • 优点
      • 容器共享宿主机的网络,性能较高。
      • 无需显式端口映射,容器与宿主机共享相同的网络。
    • 缺点
      • 容器与宿主机的网络完全共享,可能会有端口冲突,尤其是多个容器或服务同时运行时。
      • 容器的端口与宿主机端口相同,可能存在安全隐患。
  2. Port 映射模式

    如果你希望使用宿主机的特定端口来访问容器内的服务,可以使用 -p 参数进行端口映射。通过这种方式,容器内部的端口(例如 80)将映射到宿主机的另一个端口(例如 8080)。

    配置命令:

    docker run -d \--restart=always \--name "$DOCKER_NAME" \-p 8080:80 \-v "$DIR/nginx/conf/nginx.conf:/etc/nginx/nginx.conf" \-v "$DIR/nginx/conf/conf.d:/etc/nginx/conf.d" \-v "$DIR/nginx/log:/var/log/nginx" \-v "$DIR/nginx/html:/opt/html" \nginx:stable-alpine
    

    在这个配置中:
    -p 8080:80:将宿主机的 8080 端口映射到容器的 80 端口。你可以通过宿主机的 http://localhost:8080 访问 Nginx 服务。

    • 优点
      • 容器端口与宿主机端口不同,可以避免端口冲突。
      • 容器与宿主机之间有更好的网络隔离性。
      • 支持多个容器映射到宿主机不同的端口,适合多容器环境。
    • 缺点
      • 可能会导致稍微的性能损失,因为需要进行额外的端口映射。
      • 需要手动管理和指定端口映射。

九、查看日志和检查容器状态

容器启动后,你可以通过以下命令查看容器的状态,确保它在运行中:

docker ps

如果容器未正常运行,可以查看日志进行排查:

docker logs docker-nginx

查看 Nginx 的访问日志和错误日志也可以帮助你调试网站:

tail -f "$DIR/nginx/log/access.log"
tail -f "$DIR/nginx/log/error.log"

十、访问 Nginx 服务

完成上述步骤后,你可以通过浏览器访问宿主机的 IP 地址和配置的端口,查看 Nginx 是否正常运行。

  • 如果使用了 --network host,则可以通过 http://localhost 或宿主机的 IP 地址访问服务。
  • 如果使用了端口映射,例如 -p 8080:80,则可以通过 http://localhost:8080 访问 Nginx 欢迎页面。

在这里插入图片描述


总结

通过 Docker 部署 Nginx 容器非常简便,并且可以灵活配置各个参数。通过挂载本地目录,Nginx 的配置文件、日志和网站文件可以持久化存储在宿主机上,便于管理和备份。使用 Docker 来运行 Nginx 容器不仅简化了部署流程,还提供了极大的灵活性和可扩展性。


文章转载自:

http://c3AturCs.yqpck.cn
http://5ZP2bOid.yqpck.cn
http://N2C2020N.yqpck.cn
http://GVwZzI1N.yqpck.cn
http://jCUs195C.yqpck.cn
http://1zhopI0E.yqpck.cn
http://QSyRfufG.yqpck.cn
http://YKjq1DZb.yqpck.cn
http://UmLiV0VG.yqpck.cn
http://cW5p0BDN.yqpck.cn
http://gqc7Nyzh.yqpck.cn
http://vGjFpgSS.yqpck.cn
http://xZZmkfXo.yqpck.cn
http://P6e64iJ9.yqpck.cn
http://YfnZDfjP.yqpck.cn
http://kNrykH5O.yqpck.cn
http://mG9J88Xt.yqpck.cn
http://hao6K7KR.yqpck.cn
http://a3ok5d9l.yqpck.cn
http://Gv2reido.yqpck.cn
http://HojGOsgE.yqpck.cn
http://LygfQaF2.yqpck.cn
http://fNNOXHHY.yqpck.cn
http://T6XAO68q.yqpck.cn
http://QBqSlJQD.yqpck.cn
http://2h46Dw0j.yqpck.cn
http://nRJZkzfJ.yqpck.cn
http://PhVfYP5e.yqpck.cn
http://xUx1fBiC.yqpck.cn
http://Avb3iyhY.yqpck.cn
http://www.dtcms.com/wzjs/634561.html

相关文章:

  • 怎么在阿里巴巴网站做公司名称帝国cms 网站地图标签
  • 大型网站的建设包括那些内容做网站的参考书
  • dede游戏网站模板分布式加载网站的静态
  • 什么网站可以做图赚钱吗在线医疗网站建设
  • 做网站云服务器还是云虚拟主机wordpress中国网站模板
  • 学院网站建设项目的活动分解用python做美食网站
  • 达州网站建设公司百度网盘网址是多少
  • 服装网站建设规划书需求分析网站界面ui设计国家开放大学答案
  • 网站活动策划怎么做上海注册公司引流v信xiala5
  • 情趣官方网站怎么做代理企业服务平台是做什么的
  • 在凡科上做的网站无法加载出来系统优化的方法知识点
  • 开发龙岗网站建设网站设计欣赏心得体会
  • 如何打开国外网站亚马逊新店投广告是免费的吗
  • 绵阳市建设工程信息网站成都市城乡建设厅官方网站
  • 公司建网站怎么弄商务网站建设与维护试题
  • 郑州国外网站建设wordpress自定义登录界面背景图像
  • 化妆品网站建设项目计划书哪里有建设公司官网
  • 020模版网站制作长春网站开发
  • 专业网站制作电话如何将自己做的网站放到网上去
  • 上海网站建设咨询报价discuz做的网站怎么修改
  • 怎么做免流网站好听的网站名称
  • 网页视觉设计流程广西南宁网站优化
  • 苏州网站建设信息网络网站等比例缩放设计
  • 阿里巴巴网站国际站建设网站建设选哪家
  • 网站开发软件排行榜网站设计深圳网站建设公司
  • 广州网站备案方案wordpress 网络电台
  • 宿迁建设网站外贸接单软件
  • 个人网站制作dw网站怎样做wap端
  • 专业营销网站建设设计制作实践活动感悟
  • 营销型网站建设-深圳信科把网站内的文本保存到txt怎么做