部署使用 CHAT-NEXT-WEB 基于 Deepseek

本文涉及的产品
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
OpenSearch LLM智能问答版免费试用套餐,存储1GB首月+计算资源100CU
简介: 本文介绍如何在阿里云轻量服务器上部署基于 `Deepseek` 的 `CHAT-NEXT-WEB` 项目。首先,准备一台 Linux 服务器并安装 Docker,确保防火墙允许特定端口访问。接着,通过阿里云容器镜像服务解决国内网络限制问题,将镜像推送到私有仓库并拉取到本地。配置并启动 `chat-next` 项目,使用 Deepseek API 进行优化。最后,安装 Nginx 和 Certbot 配置 HTTPS 访问,确保安全性和自动续签。整个过程需严格遵循官方文档,以避免因网络问题导致的安装失败。

部署使用 CHAT-NEXT-WEB 基于 Deepseek

  1. ChatGPT-Next-Web

1、准备环境

准备一台 LINUX 服务器, 安装 Docker , 本文使用阿里云的轻量服务器;
由于打算将该项目部署在域名: https://chat.louislan.com上,所以前置条件是在阿里云轻量服务器控制台防火墙管理页将端口访问限制取消。添加特定端口的访问权限,如图:

阿里云添加访问端口

2、安装Docker

由于国内运营商访问限制,我这台阿里云服务器无法通过 Docker 官方安装方式安装,故参考阿里云官方的 Dcoker 安装文档:
https://help.aliyun.com/zh/simple-application-server/use-cases/manually-deploy-docker

注:一定要参考官方的安装,不然会出现各种由于网络原因导致的安装不成功;

3、拉取镜像

如果直接通过 docker pull yidadaa/chatgpt-next-web 会提示网络不可达而导致失败,尝试过使用阿里云的镜像加速器配置或配置其他的镜像源,但均告失败。话说,Docker 限制大陆 ip 访问,还用不用了,抵制 Docker 从我做起。
最后的解决方式是使用阿里云的容器镜像服务,建立一个阿里云私有的镜像仓库,先将镜像 push 到阿里云私仓,再从阿里云私仓 pull 到本地。具体方式如下:

3.1 阿里云容器镜像服务

https://cr.console.aliyun.com/cn-chengdu/instances

阿里云容器镜像服务

先在 github 上创建一个项目,建一个文件,获取 next-web 项目的官方源;

next-web项目的官方源

创建镜像仓库
创建镜像仓库

选择代码源来自 github 创建的仓库

github创建的仓库

在仓库管理内的 构建 页新建一条构建规则,特别注意 Dockerfilename 要和刚刚在 github 建的文件名要一致
新建一条构建规则

点击 构建 ,可通过日志查看构建是否成功。 构建成功后,可参考基本信息页的信息使用:
基本信息

3.2 登录阿里云私仓
$ docker login --username=louislan registry.cn-chengdu.aliyuncs.com

用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码(可见下图设置)。
设置密码

3.3 从Registry中拉取镜像
$ docker pull registry.cn-chengdu.aliyuncs.com/louislan/docker_git_image:[镜像版本号]

镜像版本号见下图:
镜像版本号

使用 Docker tag 重命名为 chat-next 版本号为 latest

$ docker tag registry.cn-chengdu.aliyuncs.com/louislan/docker_git_image:1.0 chat-next:latest
3.4 启动 chat-next 项目
docker run -d -p 5300:3000 \
   -e CODE=****** \
   -e DEEPSEEK_API_KEY=**********  \
   --name chat-next \
   chat-next:latest

这里将项目部署在了5300端口,由于之前放开过该端口,故现在可以通过 ip:port 方式进行访问了。 到这里就可以使用 OpenAiApikey 愉快的使用了!

4、使用 Deepseek 的配置

最近 Deepseek 比较火,OpenAiApikey 也已经到期了,所以打算使用 DeepseekApikey 来使用。参考官方的配置说明,在启动 Docker 镜像时添加上 Deepseek 的配置,启动成功后配置并没有生效。查看官方构建镜像的 Dockerfile 时发现并没有将 Deepseek 的配置加入构建时的参数中,故需要重新编写 Dockerfile ,重新构建镜像。

首先,Fork 官方的项目到自己的 Github 账户,编辑 Dockerfile 文件

1739243644591.png

在构建文件中添加 Deepseek 的配置:

1739243739815.png

之后,参考上半部分的使用阿里云容器构建服务,构建这个 Fork 的镜像,再从阿里云私仓 pull 到本地,再在启动时添加上 Deepseek 的配置启动镜像。

docker run -d -p 5300:3000 \
   -e CODE=**** \
   -e DEEPSEEK_URL=https://api.deepseek.com  \
   -e DEEPSEEK_API_KEY=**** \
   -e DEFAULT_MODEL=deepseek-reasoner  \
   --name chat-next \
   chat-next:latest

之后在就可以正常的使用 Deepseek 了!

5、安装 nginx

参考官方文档,基于 Debian: https://nginx.org/en/linux_packages.html#Debian

6、 安装 Cerbot 配置 HTTPS 访问并自动续签

参考官方文档,基于 NginxPIP : https://certbot.eff.org/instructions?ws=nginx&os=pip

注:安装还是尽量参考最新的官方文档,百度、google、AI问答太耗时了,官方文档出错率是最低的!

相关实践学习
通过ACR快速部署网站应用
本次实验任务是在云上基于ECS部署Docker环境,制作网站镜像并上传至ACR镜像仓库,通过容器镜像运行网站应用,网站运行在Docker容器中、网站业务数据存储在Mariadb数据库中、网站文件数据存储在服务器ECS云盘中,通过公网地址进行访问。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
1月前
|
运维 数据可视化 C++
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
2025年热门Web化容器部署工具对比:Portainer与Websoft9。Portainer以轻量可视化管理见长,适合技术团队运维;Websoft9则提供一站式应用部署与容器管理,内置丰富开源模板,降低中小企业部署门槛。两者各有优势,助力企业提升容器化效率。
190 1
2025 热门的 Web 化容器部署工具对比:Portainer VS Websoft9
|
2月前
|
Java 应用服务中间件 Docker
java-web部署模式概述
本文总结了现代 Web 开发中 Spring Boot HTTP 接口服务的常见部署模式,包括 Servlet 与 Reactive 模型、内置与外置容器、物理机 / 容器 / 云环境部署及单体与微服务架构,帮助开发者根据实际场景选择合适的方案。
116 25
|
2月前
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
146 0
|
4月前
|
人工智能 安全 程序员
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
用 Colab 和 ngrok 免费部署你的 Web UI 项目,随时随地访问!
|
7月前
|
中间件 关系型数据库 数据库
docker快速部署OS web中间件 数据库 编程应用
通过Docker,可以轻松地部署操作系统、Web中间件、数据库和编程应用。本文详细介绍了使用Docker部署这些组件的基本步骤和命令,展示了如何通过Docker Compose编排多容器应用。希望本文能帮助开发者更高效地使用Docker进行应用部署和管理。
202 19
|
负载均衡 应用服务中间件 持续交付
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
515 0
|
10月前
|
机器学习/深度学习 数据采集 Docker
Docker容器化实战:构建并部署一个简单的Web应用
Docker容器化实战:构建并部署一个简单的Web应用
|
前端开发 JavaScript
构建你的第一个Web应用:从零到部署
【8月更文挑战第33天】 在这篇文章中,我们将一起踏上构建一个基本Web应用的旅程。不同于传统的“安装这个、运行那个”教程,我们的目标是通过理解每一步的意义和目的来深化你的技术理解。我们将探索HTML、CSS、JavaScript的基础,并学习如何将它们结合起来创建一个简单的个人网站。接着,我们会介绍如何使用GitHub Pages进行免费部署,让你的应用上线。准备好了吗?让我们开始吧!
428 5
|
负载均衡 网络协议 应用服务中间件
web群集--rocky9.2源码部署nginx1.24的详细过程
Nginx 是一款由 Igor Sysoev 开发的开源高性能 HTTP 服务器和反向代理服务器,自 2004 年发布以来,以其高效、稳定和灵活的特点迅速成为许多网站和应用的首选。本文详细介绍了 Nginx 的核心概念、工作原理及常见使用场景,涵盖高并发处理、反向代理、负载均衡、低内存占用等特点,并提供了安装配置教程,适合开发者参考学习。
218 1