900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > Nginx搭建Https反向代理 使用阿里云SSL证书 - Docker

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

时间:2022-05-01 09:33:35

相关推荐

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-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 ;}}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 ;}}}

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

proxy_buffering off;proxy_http_version 1.1;chunked_transfer_encoding on;

3、编写Dockerfile

编写镜像文件

vim Dockerfile

粘贴以下内容

FROM nginx:latestCOPY nginx.conf /etc/nginx/nginx.confCOPY ssl /etc/nginx/ssl

完事以后nginx-proxy目录下面结构如下

4、创建镜像并运行测试

构建镜像

docker build -t custom-nginx .

镜像构建完之后,docker images查看镜像如下,可以看到custom-nginx镜像

运行custom-nginx镜像

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

docker ps查看运行的容器

去浏览器测试https://自己的域名:19981/v1/text能不能转发,出现下面的情况表示转发成功(注意:有防火墙或者安全组的话需要打开才行)

测试结果

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。