Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker

这篇具有很好参考价值的文章主要介绍了Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Docker安装Nginx - 需要有域名

没有docker需提前安装docker,不知怎么安装的请自行百度。

1、拉取镜像

docker pull nginx

2、去阿里云或者其他云服务提供商申请免费证书,申请到之后下载下来,上传到服务器

# 创建nginx-proxy目录
mkdir nginx-proxy
# 创建ssl目录,存放证书
mkdir ssl

把证书上传到ssl目录下面,下面是ssl的目录结构/root/nginx/ssl和上传的证书有两个文件一个.key一个.pem
Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker
进入nginx-proxy目录cd /root/nginx/nginx-proxy

# 拷贝证书
cp -a /root/nginx/ssl ./

3、编写nginx.conf
在nginx-proxy目录`目录下面

vim nginx.conf

粘贴以下内容,注意修改证书名为自己的(转发规则根据自己的需求自定义)

worker_processes 1;

events {
    worker_connections 1024;
}

http {
    server {
        listen 80;
        server_name openAI;

        location /v1/ {
            proxy_pass https://api.openai.com;
        }
    }

    server {
        listen 443 ssl;
        server_name openAI;
       
        ssl_certificate /etc/nginx/ssl/自己的证书名.pem;
        ssl_certificate_key /etc/nginx/ssl/自己的证书名.key;
        proxy_buffering off;
        proxy_http_version 1.1;
        chunked_transfer_encoding on;
        proxy_ssl_server_name on;
        proxy_ssl_session_reuse off;
        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;
        ssl_protocols TLSv1.2 TLSv1.3;
        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;
        location /v1/ {
            proxy_pass https://api.openai.com;
        }
    }
}

为了支持流式输出,需要关闭代理缓存(上面已经加上了,不需要的话可以注释下面的三行代码)

 proxy_buffering off;
proxy_http_version 1.1;
chunked_transfer_encoding on;

3、编写Dockerfile
编写镜像文件

vim Dockerfile

粘贴以下内容

FROM nginx:latest

COPY nginx.conf /etc/nginx/nginx.conf
COPY ssl /etc/nginx/ssl

完事以后nginx-proxy目录下面结构如下
Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker
4、创建镜像并运行测试
构建镜像

docker build -t custom-nginx .

镜像构建完之后,docker images查看镜像如下,可以看到custom-nginx镜像Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker
运行custom-nginx镜像

docker run -d -p 19980:80 -p 19981:443 --name custom-nginx  custom-nginx

docker ps查看运行的容器
Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker去浏览器测试https://自己的域名:19981/v1/text能不能转发,出现下面的情况表示转发成功(注意:有防火墙或者安全组的话需要打开才行)Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker

测试结果

14:32:07.353 [OkHttp https://xxxxxxxxxxx:19981/...] INFO com.unfbx.chatgpt.sse.ConsoleEventSourceListener - OpenAI返回数据:{"id":"chatcmpl-7PPxCx8loyVUsYRr4dCO35mypX06f","object":"chat.completion.chunk","created":1686292322,"model":"gpt-3.5-turbo-0301","choices":[{"delta":{"content":"时间"},"index":0,"finish_reason":null}]}

Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker文章来源地址https://www.toymoban.com/news/detail-489276.html

到了这里,关于Nginx搭建Https反向代理,使用阿里云免费SSL证书 - Docker的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • kkviewfile 实现nginx反向代理+https

    3.1 如果访问出错,并且报错信息是下图 两种解决方案 第一用我打包好的jar,下载替换就行 代码是 2021年7月6日,v4.0.0 版本 下载地址:链接: https://pan.baidu.com/s/1yqJDa75tokAWQhn_tfCOmA?pwd=ribv 提取码: ribv 第二你自己在gitee拉取代码进行处理 如果拉取中报错 error: RPC failed; curl 18 tr

    2024年02月11日
    浏览(32)
  • 【Squid二】使用squid和nginx服务搭建反向缓存代理服务

    参见squid正向服务代理 如果 Squid反向代理服务器中缓存了该请求的资源,则将该请求的资源直接返回给客户端 ;否则反向代理服务器将 向后台的WEB服务器请求资源,然后将请求的应答返回给客户端,同时也将该应答缓存在本地 ,供下一个请求者使用。 反向代理网站加速 工作

    2024年02月12日
    浏览(37)
  • lua使用resty.http做nginx反向代理(https请求,docker容器化部署集群),一个域名多项目转发

    下载使用 链接:https://pan.baidu.com/s/1uQ7yCzQsPWsF6xavFTpbZg 提取码:htay –来自百度网盘超级会员V5的分享 ad_load.lua文件

    2024年01月18日
    浏览(49)
  • nginx-反向代理是设置传输协议http/https

            X-Forwarded-Proto (XFP) 是一个事实上的标准首部,用来确定客户端与代理服务器或者负载均衡服务器之间的连接所采用的传输协议(HTTP 或 HTTPS)。在服务器的访问日志中记录的是负载均衡服务器与服务器之间的连接所使用的传输协议,而非客户端与负载均衡服务器

    2024年02月14日
    浏览(36)
  • Nginx常用配置-反向代理-https重定向-端口转发

    二级目录映射 目前前后端项目分离场景多了以后,一般是前端一个端口,后端一个端口。 如前端是https://example.com/index.html,调用的接口是https://example.com:4433 如此部署对于一些小项目未免有些麻烦,当然你在公网环境下也可以选择使用子域名、其他域名进行跨域访问。 这里说

    2024年02月16日
    浏览(30)
  • 如何配置 Nginx 作为 Jenkins 的反向代理并启用 SSL 加密

    简介 默认情况下,Jenkins 自带内置的 Web 服务器,监听在 8080 端口上。这对于运行私有 Jenkins 实例或者只是需要快速启动而不关心安全性的用户来说很方便。但是一旦您的主机上有真实的生产数据,使用更安全的 Web 服务器(如 Nginx)来处理流量是个不错的主意。 本文将详细

    2024年04月22日
    浏览(27)
  • nginx部署以及反向代理多域名实现HTTPS访问

    直接进入/opt/nginx_main/nginx-info里面创建了 选择域名 然后配置免费ssl证书 证书设置我们需要的域名 然后申请之后稍等一段时间 之后点击下载,下载nginx的证书文件 一个pem,一个key 然后把下载的证书放到上面的 ssl路径 记录好位置即可,步骤 2.5会用到 1.先进入阿里云的数字证

    2024年02月12日
    浏览(37)
  • linux下nginx配置https和反向代理本地端口

    1 修改配置文件/etc/nginx/sites-enabled/default  在配置文件中增加一个server用来做https端口监听, ssl_certificate和ssl_certificate_key修改为自己申请的https认证文件 location  /pose {              proxy_pass http://127.0.0.1:10084;   } 此处将以/pose开始的api转发到本机127.0.0.1:10084,需要注意的

    2024年02月12日
    浏览(30)
  • nginx 开启https时反向代理http服务的问题

    当我们用nginx开启https时,反向代理一个本地的http服务,会遭遇跨域问题,报错 strict-origin-when-cross-origin ,导致很多资源无法加载。 这时只要在反向代理部分的配置文件中加入这一条语句即可:

    2024年02月14日
    浏览(26)
  • nginx反向代理https域名时,请求报错502问题排查

    微信公众号:运维开发故事,作者:冬子先生 一. 现象 在使用nginx反向代理后端服务器的时候,因为配置的是域名,导致HTTPS 请求转发失败,报 SSL 错误,js 报 502 img img 二. 排查过程 1、查看nginx日志,发现报502,但是本地curl upstream中的后端域名是可以正常通的 img 2、查看后端

    2024年02月11日
    浏览(28)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包