docker中使用nginx配置https访问

news2025/3/1 6:23:50

1.申请ssl证书: https://www.joyssl.com/certificate/select/free.html
免费的ssl证书(一般有效期是90天)到期后,则需要重新申请
在这里插入图片描述
申请完之后下载证书
在这里插入图片描述
然后到验证信息中
在这里插入图片描述
然后到自己的域名控制台
添加解析记录(这是ssl相关的,后面还要添加自己的通配域名)
在这里插入图片描述
然后再添加自己的通配域名解析记录

在这里插入图片描述

后面就是配置nginx了
docker-compose文件
/nginx/ssl 下方的是刚才解压后的证书文档中nginx文件夹中的东西

services:
    nginx:
        image: nginx
        container_name: nginx
        ports:
            - 8088:80
            - 443:443
        volumes:
            - ./nginx/nginx.conf:/etc/nginx/nginx.conf
            - ./nginx/conf.d:/etc/nginx/conf.d
            - ./nginx/html:/etc/nginx/html
            - ./nginx/log:/var/log/
            - ./nginx/ssl:/etc/nginx/ssl

        network_mode: host

nginx.conf 不用动, 参照上一篇文档
conf.d中的.conf文件如下

server {
	listen 443 ssl;
	ssl_certificate /etc/nginx/ssl/xxxxxx.crt;  # 这里改成自己的证书路径
	ssl_certificate_key /etc/nginx/ssl/xxxx.key; # 这里改成自己的证书路径
	ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
	ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+AES128:RSA+AES128:EECDH+AES256:RSA+AES256:EECDH+3DES:RSA+3DES:!MD5;
	ssl_prefer_server_ciphers on;
	ssl_session_timeout 10m;

	ssl_buffer_size 1400;
	ssl_stapling on;
	ssl_stapling_verify on;
	server_name loaclhost; #自己的域名
	access_log on;
	access_log /var/log/nginx/vx.access.log;
	error_log  /var/log/nginx/vx.error.log;
	index index.html index.htm index.php;

	if ($ssl_protocol = "") { return 301 https://$host$request_uri; }

	location / {
		proxy_pass http://172.17.0.1:80/; 
#		include proxy.conf;
	}
}

启动,完事!

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

电测量数据交换DLMSCOSEM组件第53部分:DLMSCOSEM应用层(上)

1.范围 本部分规定了DLMS/COSEM客户机和服务器的DLMS/COSEM应用层的结构、服务和协议。同时,定义规则规定DLMS/COSEM通信配置。 它定义了用于建立和释放应用程序连接的服务,以及用于访问GB/T17215.662中使用逻辑名称(LN)或短名称(SN)引用定义的COSEM接口对象的方法和属性…

Django实战:开启数字化任务管理的新纪元

🚀 Django实战:开启数字化任务管理的新纪元 🌐 📖 引言 在数字化转型的浪潮中,任务管理的智能化成为提升组织效能的关键。今天,我将带领大家深入了解我们最新开发的OFTS系统——一款创新的组织任务管理软…

【算法刷题日志】信封嵌套问题

俄罗斯套娃信封问题 信封嵌套问题可以转换为最长递增子序列的问题。每次合法的嵌套都是大的套小的,就相当于找一个最长递增子序列,长度就是能嵌套的最多个数,所以我们可以先对宽度进行升序排序,如果宽度相同就按高度降序排序&…

动态SLAM:如何判断一个特征是动态特征(对极几何)

文章目录 1.什么是极线、极点和极面2.如何判断其为动态点特征3.如何判断其为动态线特征 1.什么是极线、极点和极面 由图可知,C1,C2,X(X1,X2)组成了一个三角平面,这个三角所在的平面就是极面 在这个极平面中,和成像平面相交的线是极线&#xf…

“2024青岛软博会”助力打造“世界工业互联网之都”

在数字经济浪潮的推动下,青岛国际软件融合创新展(简称青岛软博会)作为年度科技盛宴,不仅全面展示了青岛软件产业发展的辉煌成果,更聚焦于工业软件这一核心领域,为青岛乃至全国的软件产业转型升级注入了强劲…

【gmid】设计一个CS放大器

1.电路原理图 & 电路指标 设计指标&#xff1a; 负载电容CL2 pF增益带宽积GBW100 MHz增益 Av10gm/Id10 2. 根据电路指标进行 手算 2.1 确定 gm 2.2 确定负载电阻 RD 2.3 确定 Id Vov > 150mVgm/id < 10MOS管处于 强反型区Vov < 0gm/id 较大MOS管处于 亚阈值区0…

深入解析 Go 语言 GMP 模型:并发编程的核心机制

前言 本章是Go并发编程的起始篇章&#xff0c;在未来几篇文章中我们会围绕Go并发编程进行理论和实战的学习&#xff0c;欢迎关注我哦&#xff01; 本章主要以介绍GMP模型为主&#xff0c;偏向于面试和八股&#xff0c;目的是让小伙伴们注重于知识本身&#xff0c;面向面试&am…

昇思25天学习打卡营第20天|CV-ResNet50图像分类

打卡 目录 打卡 图像分类 ResNet网络介绍 数据集准备与加载 可视化部分数据集 残差网络构建 Building Block 结构 代码实现 Bottleneck结构 代码实现 构建ResNet50网络 代码定义 模型训练与评估 可视化模型预测 重点&#xff1a;通过网络层数加深&#xff0c;感知…

Windows系统使用Docker搭建Focalboard项目管理工具详细教程

目录 前言 1. 使用Docker本地部署Focalboard 1.1 在Windows中安装 Docker 1.2 使用Docker部署Focalboard 2. 安装Cpolar内网穿透工具 3. 实现公网访问Focalboard 4. 固定Focalboard公网地址 前言 作者简介&#xff1a; 懒大王敲代码&#xff0c;计算机专业应届生 今天给…

TCP为什么需要四次挥手?

tcp为什么需要四次挥手&#xff1f; 答案有两个&#xff1a; 1.将发送fin包的权限交给被动断开发的应用层去处理&#xff0c;也就是让程序员处理 2.接第一个答案&#xff0c;应用层有了发送fin的权限&#xff0c;可以在发送fin前继续向对端发送消息 为了搞清楚这个问题&…

【java】力扣 反转字符串中的单词

目录 题目描述题目描述思路代码 题目描述 151.反转字符串中的单词 题目描述 思路 主要是利用快慢指针和字符串的截取 还要了解去掉首尾空格的函数是trim 那s"the sky is blue"举例 这个例子是没有首尾空格的&#xff0c;以防万一&#xff0c;我们不管有没有&#…

第06课 Scratch入门篇:侏罗纪公园

侏罗纪公园 入门篇适合新手&#xff0c;如您已经学过&#xff0c;可以忽略本节课&#xff01; 一、故事背景&#xff1a; 在遥远的过去&#xff0c;有一个充满神秘与惊奇的时代——侏罗纪。那是一个恐龙称霸的时代&#xff0c;各种巨大的生物在这片古老的土地上留下了它们的足…

APT 安装软件详细教程

文章目录 APT 安装软件详细教程APT 概述APT 的基本命令APT 命令详解安装软件包更新和升级软件包删除软件包搜索和查找软件包管理软件包依赖清理软件包缓存APT 配置软件源配置自定义软件源常见问题及解决方案解决软件包依赖问题处理软件源错误其他常见问题使用 APT 的最佳实践总…

【设计模式】工厂模式详解

1.简介 工厂模式是一种创建型设计模式&#xff0c;通过提供一个接口或抽象类来创建对象&#xff0c;而不是直接实例化对象。工厂模式的主要思想是将对象的创建与使用分离&#xff0c;使得创建对象的过程更加灵活和可扩展。 工厂模式主要包括以下角色&#xff1a; 抽象工厂&a…

java 字符串a+b到底生成几个对象?

我们知道&#xff0c;java内存模型是堆栈元空间&#xff08;也叫方法区&#xff0c;它是在内存中的&#xff09;。 字符串常量池保存在堆里面。为了节约空间&#xff0c;如果常量池里面有&#xff0c;就不需要创建对象&#xff0c;只需要返回常量池里面的引用&#xff1b;如果…

c#实际开发长到的知识

个人建议先把rotion的库导入进来再操作,具体需要导入的库有,helper库包含了modbus通讯封装好的模块,而mvvm则可以用来做设计mvvm模块,你可以使用里面封装好的实现方法,用起来特别简单更容易实现其中的操作,但是我担心那天被卡脖子了啊啊啊,要是我罗工把库下架了那不是死…

圈子论坛小程序搭建,文章源码链接上传功能社交需求带支付功能

论坛小程序技术栈 前端&#xff1a;uni-app,vue3 后端&#xff1a;PHP,thinkphp8 数据库设计&#xff1a; 设计数据库结构&#xff0c;存储用户数据、帖子数据等。 数据库系统&#xff1a;MySQL5.7 功能开发&#xff1a; 明确小程序的功能需求&#xff1a;浏览、发帖、评…

ChemLLM:化学领域的大模型

人工智能咨询培训老师叶梓 转载标明出处 在化学这一特定学科的应用上&#xff0c;一直缺乏专门的对话模型。化学数据和科学知识通常存储在结构化的数据库中&#xff0c;这给直接使用这些数据训练语言模型带来了挑战。为了解决这一问题&#xff0c;来自上海人工智能实验室的研究…

RabbitMQ高级篇(如何保证消息的可靠性、如何确保业务的幂等性、延迟消息的概念、延迟消息的应用)

文章目录 1. 消息丢失的情况2. 生产者的可靠性2.1 生产者重连2.2 生产者确认2.3 生产者确认机制的代码实现2.4 如何看待和处理生产者的确认信息 3. 消息代理&#xff08;RabbitMQ&#xff09;的可靠性3.1 数据持久化3.2 LazyQueue&#xff08; 3.12 版本后所有队列都是 Lazy Qu…