deepseek-r1本地化部署之后使用nginx配置外网

0、前提

已根据deepseek-r1本地化部署部署好了环境,能通过http://localhost:3000打开open-webui的页面。

1、添加nginx 的配置文件

假设你的域名是deepseek.example.com
在/etc/nginx/conf.d目录下创建对应的配置文件,文件名为deepseek.example.com.conf
文件内容如下:

server {
    listen 80;
    server_name deepseek.example.com;
}

使用certbot配置ssl,如果没有安装certbot,参考Linux CentOS 7 使用certbot管理nginx证书

certbot --nginx

按照步骤一步一步操作最终文件如下:

server {
    server_name deepseek.example.com;

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/deepseek.example.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/deepseek.example.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

}server {
    if ($host = deepseek.example.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    listen 80;
    server_name deepseek.example.com;
    return 404; # managed by Certbot
}

修改该文件,添加http和ws转发,最终文件如下:


server {
    server_name deepseek.example.com;

    listen 443 ssl; # managed by Certbot
    ssl_certificate /etc/letsencrypt/live/deepseek.example.com/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/deepseek.example.com/privkey.pem; # managed by Certbot
    include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
    ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot

location /ws {
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
    proxy_pass http://127.0.0.1:3000;
}

    
  location / {
    proxy_pass http://localhost:3000;
    proxy_read_timeout      3600;
    proxy_connect_timeout   300;
    proxy_redirect          off;
    proxy_http_version 1.1;
    proxy_set_header Host $http_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto http;

    }
}server {
    if ($host = deepseek.example.com) {
        return 301 https://$host$request_uri;
    } # managed by Certbot

    listen 80;
    server_name deepseek.example.com;
    return 404; # managed by Certbot
}

重启nginx

nginx -s reload

2、配置完成之后打开对应域名验证

打开https://deepseek.example.com/
不出意外的话就出意外了
模型都加载不出来,按下F12,发现控制台出现“WebUI could not connect to Ollama”

解决方案:

1.点击头像 - 管理员面板


image.png

2.点击设置 - 外部链接 - 配置


image.png

3.点击刷新按钮会出现验证失败提示
image.png

4.添加ollama配置

systemctl edit ollama.service

添加如下内容

[Service]
Environment="OLLAMA_HOST=0.0.0.0"

重启ollama

systemctl daemon-reload
systemctl restart ollama

5、返回第4步验证

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容