Docker安裝Nginx - 需要有域名
沒(méi)有docker需提前安裝docker,不知怎么安裝的請(qǐng)自行百度。
1、拉取鏡像
docker pull nginx
2、去阿里云或者其他云服務(wù)提供商申請(qǐng)免費(fèi)證書(shū),申請(qǐng)到之后下載下來(lái),上傳到服務(wù)器
# 創(chuàng)建nginx-proxy目錄
mkdir nginx-proxy
# 創(chuàng)建ssl目錄,存放證書(shū)
mkdir ssl
把證書(shū)上傳到ssl目錄下面,下面是ssl的目錄結(jié)構(gòu)/root/nginx/ssl
和上傳的證書(shū)有兩個(gè)文件一個(gè).key
一個(gè).pem
進(jìn)入nginx-proxy目錄cd /root/nginx/nginx-proxy
# 拷貝證書(shū)
cp -a /root/nginx/ssl ./
3、編寫(xiě)nginx.conf
在nginx-proxy目錄`目錄下面
vim nginx.conf
粘貼以下內(nèi)容,注意修改證書(shū)名為自己的(轉(zhuǎn)發(fā)規(guī)則根據(jù)自己的需求自定義)
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/自己的證書(shū)名.pem;
ssl_certificate_key /etc/nginx/ssl/自己的證書(shū)名.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;
}
}
}
為了支持流式輸出,需要關(guān)閉代理緩存(上面已經(jīng)加上了,不需要的話可以注釋下面的三行代碼)
proxy_buffering off;
proxy_http_version 1.1;
chunked_transfer_encoding on;
3、編寫(xiě)Dockerfile
編寫(xiě)鏡像文件
vim Dockerfile
粘貼以下內(nèi)容
FROM nginx:latest
COPY nginx.conf /etc/nginx/nginx.conf
COPY ssl /etc/nginx/ssl
完事以后nginx-proxy
目錄下面結(jié)構(gòu)如下
4、創(chuàng)建鏡像并運(yùn)行測(cè)試
構(gòu)建鏡像
docker build -t custom-nginx .
鏡像構(gòu)建完之后,docker images
查看鏡像如下,可以看到custom-nginx鏡像
運(yùn)行custom-nginx鏡像
docker run -d -p 19980:80 -p 19981:443 --name custom-nginx custom-nginx
docker ps
查看運(yùn)行的容器去瀏覽器測(cè)試
https://自己的域名:19981/v1/text
能不能轉(zhuǎn)發(fā),出現(xiàn)下面的情況表示轉(zhuǎn)發(fā)成功(注意:有防火墻或者安全組的話需要打開(kāi)才行)
測(cè)試結(jié)果
14:32:07.353 [OkHttp https://xxxxxxxxxxx:19981/...] INFO com.unfbx.chatgpt.sse.ConsoleEventSourceListener - OpenAI返回?cái)?shù)據(jù):{"id":"chatcmpl-7PPxCx8loyVUsYRr4dCO35mypX06f","object":"chat.completion.chunk","created":1686292322,"model":"gpt-3.5-turbo-0301","choices":[{"delta":{"content":"時(shí)間"},"index":0,"finish_reason":null}]}
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-489276.html
文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-489276.html
到了這里,關(guān)于Nginx搭建Https反向代理,使用阿里云免費(fèi)SSL證書(shū) - Docker的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!