随记-nginx docker + SSL 配置 - 配置等资源挂宿主机

随记-Nginx docker + SSL 配置 - 配置等资源挂宿主机等
笔者动手配置,随手写的笔者,保证可操作
话说现在padmon是不是已经有代替docker的趋势了,谁能告诉我一把?

配置前准备

# 拉取nginx镜像 
docker pull nginx #启动(暂时)
docker run -d --name nginx -p 1080:80 nginx 

#查看镜像 
docker ps 

#进入容器内部 
docker exec -it nginx /bin/bash 

# 找到nginx.conf所在的地址记住后用 
find / -name 'nginx.conf' # 这里以/etc/nginx/nginx.conf为例 

#退出容器
exit;

制作证书

安装openssl

#安装openssl
yum install -y openssl openssl-devel
mkdir /usr/local/nginx/cert -p 

制作密钥

cd /usr/local/nginx/cert 
openssl genrsa -out nxweb.key 2048 

制作证书

openssl req -new -x509 -days 3650 -key nxweb.key -out nxweb.crt
---可以一路回车,也可以和笔者一样填写一些信息---

Country Name (2 letter code) [XX]:cn
State or Province Name (full name) []:beijing
Locality Name (eg, city) [Default City]:beijing
Organization Name (eg, company) [Default Company Ltd]:nx 
Organizational Unit Name (eg, section) []:nx 
Common Name (eg, your name or your server's hostname) []:nianxi.cc 
Email Address []:xlnian@nianxi.cc
Jym 也可以去阿里云等站点申请免费证书,自己制作的证书会有“不安全”提示
如果是网站申请,则不需要这一步操作, 直接从平台上下载即可

配置

# 创建外部文件夹 
mkdir -p /usr/local/nginx/conf
mkdir -p /usr/local/nginx/logs
mkdir -p /usr/local/nginx/html # 将容器的配置文件 复制到 创建好的文件夹中 

docker cp nginx:/etc/nginx/nginx.conf /usr/local/nginx/conf/ 
docker cp nginx:/etc/nginx/conf.d/ /usr/local/nginx/conf/ 
docker cp nginx:/usr/share/nginx/html/ /usr/local/nginx/ 
docker cp nginx:/var/log/nginx /usr/local/nginx/logs

安装容器并启动

# 如之前有则则删除 
docker stop nginx && docker rm nginx 

# 安装 
docker run -d --name nginx -p 80:80 -p 443:443 \ 
-v /usr/local/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \
-v /usr/local/nginx/conf/conf.d:/etc/nginx/conf.d/ \ 
-v /usr/local/nginx/logs:/var/log/nginx \ 
-v /usr/local/nginx/html:/usr/share/nginx/html \ 
-v /usr/local/nginx/cert:/etc/nginx/cert \ 
-e TZ=Asia/Shanghai --privileged=true nginx

修改nginx.conf配置支持https

可去掉80或再做一个80转发至433的配置
笔者两者都留着
server {
    listen       80;
    listen  [::]:80;
    listen 443 ssl;
    listen  [::]:443 ssl;
    server_name  somedomain.cc;
    root   /usr/share/nginx/html;

    ssl_certificate cert/nxweb.crt;
    ssl_certificate_key cert/nxweb.key;
    ssl_session_timeout 5m;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
    ssl_prefer_server_ciphers on;

    location / {
       index  index.html;
       root   /usr/share/nginx/html;
       error_page 404 /index.html;
       try_files $uri $uri/ @default;
    }

     error_page 404 /404.html;
          location = /40x.html {
     }


      error_page 500 502 503 504 /50x.html;
           location = /50x.html {
      }


     location @default {
        rewrite ^.*$ /index.html last;
    }    

}

重新加载配置

#检验配置文件正确性 
docker exec nginx nginx -t 

#重新加载配置文件 
docker exec nginx nginx -s reload

测试

浏览器输入对应域名可

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于YOLOv8深度学习的水稻害虫检测与识别系统【python源码+Pyqt5界面+数据集+训练代码】目标检测、深度学习实战

《博主简介》 小伙伴们好,我是阿旭。专注于人工智能、AIGC、python、计算机视觉相关分享研究。 ✌更多学习资源,可关注公-仲-hao:【阿旭算法与机器学习】,共同学习交流~ 👍感谢小伙伴们点赞、关注! 《------往期经典推…

【Mysql】InnoDB的表空间(九)

概述 表空间是一个在 InnoDB 中比较抽象的概念,对于系统表空间来说,对应着文件系统中一个或多个实际文件;而对于每个独立表空间来说,对应着文件系统中一个名为表名.ibd 的实际文件。可以把表空间想象成由很多个页组成的池子&…

gin使用自签名SSL证书与自签名证书不受信任方法解决

文章目录 1. X.509 V3证书介绍2、使用openssl生成自签名证书和解决不受信任问题2.1、生成根证书2.2、为域名生成证书申请文件2.3、为域名创建证书的扩展描述文件2.4、为域名创建证书 3、Go应用中使用自签名证书3.1、gin框架调用实现3.2、运行效果 4、使用java的bouncycastle生成…

HarmonyOS 开发实例—蜜蜂 AI 助手

HarmonyOS 开发实例—蜜蜂 AI 助手 1. 前言 自华为宣布 HarmonyOS NEXT 全面启动,近期新浪、B 站、小红书、支付宝等各领域头部企业纷纷启动鸿蒙原生应用开发。据媒体统计,如今 Top20 的应用里,已经有近一半开始了鸿蒙原生应用开发。虽然目…

【Jmeter】Jmeter基础4-Jmeter元件介绍之监听器

2.4、监听器 监听器主要用于收集、统计、查看和分析结果。 2.4.1、察看结果树 作用:查看取样器请求和响应结果,包括消息头,请求的数据,响应的数据等。一般在调试时才用,在实际运行压测时建议禁用,因为大量…

SpringBoot项目打成War包部署

简介 一般情况下,在SpringBoot项目开发完成进行服务器部署时,都是打成JAR包进行部署运行的。但是在有些情况下也需要将其打成War包使用Tomcat进行部署。本篇文章就简单介绍一下SpringBoot如何打成War包。 操作步骤 1、修改pom文件 首先,要…

蓝牙与其他无线技术的比较:优势与局限

在无线技术的世界中,蓝牙技术因其独特的特性和广泛的应用而脱颖而出。然而,像所有技术一样,蓝牙也有其优势和局限性,特别是当与其他无线技术如Wi-Fi、Zigbee和NFC等进行比较时。本文旨在探讨这些不同技术的关键特点,以…

Android---Kotlin 学习001

Kotlin 的诞生 2011年,JetBrains 宣布开发 Kotlin 编程语言,这门新语言可以用来编写在 Java 虚拟机上运行的代码,是 Java 和 Scale 语言之外的又一选择。2017年,Google 在赢得与 Oracle 的诉讼一年后,Google 宣布 Ko…

大数据云计算之OpenStack

大数据云计算之OpenStack 1.什么是OpenStack,其作用是什么?OpenStack主要的组成模块有哪些?各自的主要作用是什么? OpenStack是一个开源的云计算平台,旨在为企业和服务提供商提供私有云和公有云的建设和管理解决方案…

显示曾连接过的wifi密码

windows 11 可以直接显示当前连接的密码,或者历史连接保存密码的wifi 也可以使用命令 “nova 9” 是连接过的wifi

基于YOLOv8的农作物水稻病害检测系统,优化SPPF提升检测精度

💡💡💡本文摘要:农作物水稻病害首先进行数据处理到训练模型,最好优化SPPF提升检测精度,map0.5从原始的0.807提升至0.821 1.YOLOv8介绍 Ultralytics YOLOv8是Ultralytics公司开发的YOLO目标检测和图像分割模…

玩转大数据16:大数据存储与文件格式优化

随着大数据时代的到来,存储和处理海量数据成为了一个重要的挑战。在大数据存储中,选择合适的文件格式对数据的压缩率、读写性能和扩展性起着关键作用。本文将介绍大数据存储的挑战,探讨常见的文件格式,并深入讨论文件格式优化的策…

Zxing库的使用⭐️实现给自己的博客主页生成一张二维码链接,有源码可以直接复制到本地执行

目录 前言 一、简介 二、本地实现 2.1 引入依赖(根据自己springboot项目来) 2.2 实现类 三、运行一次 前言 小伙伴们大家好,自从地铁上刷到Zxing库的使用后,一直想本地部署玩一玩 一、简介 ZXing(全称为 Zebra Cr…

leetcode-138-随机链表的复制(Java实现)

题目: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点…

教你用JMeter做接口测试的几个简单实例

前言 这次小项目是基于HTTP协议的接口,通过JMeter来完成一次基本的接口测试,完整复习一下JMeter的基本操作。 在实际项目中,测试也要先从开发那拿到接口说明书,分析熟悉业务后,写接口的测试用例,最后再在…

换能器信号工作原理

一、ANB板子发送一个周期,频率为40M和60M的 78V的激励脉冲信号。如下图 频率越高,周期越短。图像分辨率更高。原因如下: ①由于采用的是纵向分辨率。相邻两个点之间必须要间隔 下图的2分之兰大才能被识别。 二、当信号给到换能器后&#xf…

JS基础之变量对象

JS基础之变量对象 变量对象基础变量对象全局上下文函数上下文执行过程进入执行上下文代码执行思考题 变量对象 基础 当JavaScript代码执行一段可执行代码(executable code)时,会创建对应的执行上下文(execution context&#xff…

redis-学习笔记(Jedis list简单命令)

lpush & lrange lpush 头插, 第二个参数为变长参数, 即可以一次往里面添加 N 个值 lrange 获取列表某一下标区间的内容, 注意返回值类型 代码演示 rpush & rpop & lpop rpush 在列表中尾插数据, 第二个参数仍是边长列表 lpop 头删 rpop 尾删 代码演示 blpop & …

SpringBoot核心功能-temp

yml&类配置 Configuration-processor

实验03:OSPF配置网络实验

1.实验目的: 本实验的主要目的是了解OSPF协议的基本概念、OSPF网络的配置及验证,通过实验来掌握OSPF协议的工作原理、配置方法、路由表的生成过程等。 2.实验内容: 设计一个拓扑结构,并在网络设备上进行配置;配置OS…