news 2026/8/13 9:29:53

腾讯云 Ubuntu 24.04 + Docker,免费从零把AI生成的项目部署到服务器。

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
腾讯云 Ubuntu 24.04 + Docker,免费从零把AI生成的项目部署到服务器。

很多用ai生成项目的小伙伴,写完本地项目后,都会卡在最后一步:如何把本地项目部署到云服务器,让所有人都能通过公网访问?其实服务器部署并没有想象中复杂,不用精通复杂的Linux命令,也无需掌握高深的运维知识,跟着完整实操流程一步步操作,零基础也能轻松搞定。

一、云服务器选购:

1.在腾讯云或阿里云购买服务器:

腾讯云可以白嫖一个月

学生可以认证购买学生折扣

个人使用建议买轻量级就够用了,项目较大可以买大一点的

服务器选择Docker,如果选错了可以重装系统

在信息里面查看初始用户名和密码,后续登录要用

重置密码先关机,选择离线重置

2.工具下载:

Xshell8 与 Xftp 8 的安装与基本操作 官网:https://www.xshell.com/zh/free-for-home-school/

Xshell 8负责连接云服务器,Xftp 8上传文件。

Xshell 8连接云服务器:

先新建会话

这里名称随意取,主机就是服务器里的 IPv4

用户名就是初始用户名

输入用户名,密码后,进入这个页面就是成功

如果登录有问题可以检查一下防火墙有没有少端口。

Xftp 8的使用和Xshell 8差不多

3.现在要对AI生成的项目进行部署操作(建议备份)

可以给 ai 提示词,让ai操作

把Docker Compose 部署参考文档.md放到docs文件夹

下载文档:

Docker Compose 部署参考文档

这是完整的提示词:

认真审核并理解所提供的 docs\Docker Compose 部署参考文档.md 的内容,并基于我的项目源码和腾讯云服务器相关配置,帮我生成使用Docker Compose 方式部署项目全栈的相关文件及完整操作md教程。

我的腾讯云服务器相关配置如下(记得把服务器配置改成自己的):

CPU 2核

内存2GB

系统盘 SSD云硬盘 40GB

流量包 200GB/月(带宽 3Mbps)

操作系统 Ubuntu Server 24.04 LTS 64bit

预装应用 Docker 27.5.1

公网IP 你自己的IP

pip和pypi设置成国内镜像源地址:https://mirrors.aliyun.com/pypi/simple/

前端的源码使用vue3使用打包后的dist源码数据

记得把Docker Compose 部署参考文档.md放到docs文件夹

可以用ai的提示词优化再优化一遍,也可以直接输出。我这里用的是WorkBuddy,codex,claude code,Trae CN。都可以

4.Gitee 云仓库管理:

接着我们把 ai 生成好的上传gitee

工作台 - Gitee.com

在我们的gitee里新建一个仓库:

把要部署到云服务器的项目上传到gitee仓库:

不知道git命令的可以参考一下:

在项目文件夹里打开

输入命令:​
1.初始化本地git仓库(只执行一次)​
git init​
2.把全部文件加入暂存区,小数点不要丢​
git add .​
3.提交到本地版本库​
git commit -m "初始提交:完整项目代码"​

​如果提交到本地仓库报错,提示要设置用户名邮箱,执行下面两行(替换成你自己 gitee 的用户名和注册邮箱)​
git config --global user.name "你的Gitee用户名"​
git config --global user.email "你的gitee注册邮箱"

4.关联远程gitee仓库
git remote add origin 你的仓库地址

​5.推送上传代码到gitee​
git push -u origin "master"​

5.返回Xshell 8工具操作

在xshell中输出 cd /home/ubuntu 跳转到目录

从 Gitee 远程仓库,把整套项目代码下载到服务器本地(用自己仓库地址)

执行完成后可以从 Xftp 8 看到刚刚从 Gitee 下载的项目了

构建与启动相关Linux与docker指令:

在 Xshell 8 进入项目路径: cd 项目源码路径

不确定路径就在 Xftp 8 里面看一下路径

docker配置检查:

docker --version

6#检查 yml 语法、检查.env 文件格式

接下来是重点输入这两条命令:

#检查 yml 语法、检查.env 文件格式

docker compose config --quiet

#将 yml 里面${变量名}占位符,替换成.env里真实的值

docker compose config > /tmp/sfma-compose-rendered.yml

这个两个都无报错就成功了

能正常执行上面两个语句就跳过 .env 配置

这里是有问题,无输出就是成功

.env 配置:

nano操作的相关快捷键

填写相关配置信息后,再执行:

(1)ctrl+O :保存

(2)执行回车键

(3)Ctrl+X

学过一点Linux的应该会

如果 .env 文件报错,或者没有.env,重新配置(不会可以截图会ai):

#进入.env 查看

nano .env

#重新生成 .env 文件(确保有模板文件):

cp .env.example .env

#先检查你的服务器有没有这个模板文件

ls -la

我这里的模板文件是.env.production

创建.env文件: cp .env.production .env

如果没有 .env.example 文件,问ai,或者让ai生成需要的数据放在 .env

配置 .env相关信息: nano .env

nano .env进入后是下面这个文件

可以问题 ai 这些信息是什么意思,ai会指导你这么填

再次校验docker配信息

这次没有问题

这个时间比较久可能要10分钟,项目越大越久

拉取前端和后端的源码镜像

sudo docker compose build --pull frontend

sudo docker compose build --pull backend

#拉取完成后启动全部服务

sudo docker compose up -d

到这里成功了就可以用公网登录自己的项目了

如果失败了还有问题,可能是之前ai配置时没配置好 requirements.txt,可以把问题发给ai。一般不会有特别大的问题,我操作时只碰到了.env文件有问题,用豆包就解决了。

停止服务器

#停止容器,保留容器、保留数据,后续可以直接 up 重启

sudo docker compose stop

容器管理与运维:

成功部署后,日常运维离不开对 Docker 容器的有效管理。以下是一些常用命令:

  • 查看运行中的容器状态:sudo docker compose ps可以列出当前项目下所有容器的运行状态、端口映射等信息。
  • 查看容器实时日志:当服务出现异常时,使用sudo docker compose logs -f [服务名](例如sudo docker compose logs -f backend)可以实时追踪指定容器的日志输出,-f参数表示持续跟随(follow)。查看所有服务的日志则使用sudo docker compose logs
  • 重启单个服务:如果只修改了某个服务(如后端)的代码或配置,无需停止全部服务,可以使用sudo docker compose restart backend来单独重启该服务。
  • 重建并启动服务:当 Dockerfile 或构建上下文发生变更时,需要重新构建镜像并启动。执行sudo docker compose up -d --build会强制重新构建镜像并启动容器。
  • 进入容器内部调试:若需进入容器内部执行命令(如检查文件、运行数据库客户端),可使用sudo docker exec -it [容器名] /bin/bash。容器名可以通过sudo docker compose ps查看。

服务更新与回滚:

当代码更新后,标准的更新流程如下:

  1. 在本地或通过 Git 将新代码推送至 Gitee 仓库。
  2. 在服务器的项目目录下,执行git pull拉取最新代码。
  3. 执行sudo docker compose down停止并移除当前所有容器(数据卷默认会保留)。
  4. 执行sudo docker compose up -d --build重新构建并启动所有服务。

如果新版本出现问题需要回滚,可以:

  1. 使用git log查看提交历史,找到稳定版本的提交哈希(commit hash)。
  2. 执行git reset --hard [提交哈希]回退代码。
  3. 再次执行sudo docker compose downsudo docker compose up -d --build即可恢复到旧版本。

数据持久化与备份:

Docker Compose 中通过volumes配置实现数据持久化(如数据库数据)。务必在docker-compose.yml中正确定义数据卷。定期备份这些卷数据是保障项目安全的重要措施。可以使用sudo docker run --rm -v [卷名]:/data -v $(pwd):/backup alpine tar czf /backup/backup.tar.gz /data等命令进行备份。

监控与健康检查:

建议在docker-compose.yml中为关键服务配置healthcheck指令,Docker 会自动监控服务健康状态。同时,可以结合服务器监控工具(如htop,docker stats)观察系统资源使用情况。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/13 9:29:07

如何用NHSE免费存档编辑器3小时打造梦想动物森友会岛屿

如何用NHSE免费存档编辑器3小时打造梦想动物森友会岛屿 【免费下载链接】NHSE Animal Crossing: New Horizons save editor 项目地址: https://gitcode.com/gh_mirrors/nh/NHSE 还在为《集合啦!动物森友会》中那些永远收集不齐的家具、难以改造的地形和随机出…

作者头像 李华
网站建设 2026/8/13 9:28:25

Python量化选股实战:从零搭建轻量级回测框架

如果你正在学习Python数据分析,或者对量化投资感兴趣,但总觉得那些复杂的金融模型和庞大的回测框架离自己太远,那么这篇文章就是为你准备的。 我花了三天时间,用Python写了一个轻量级的选股工具。它的核心逻辑并不复杂&#xff0…

作者头像 李华
网站建设 2026/8/13 9:22:56

STM32 HAL库GPIO驱动入门:从点灯到工程实践与调试

1. 项目概述:从点灯开始,理解STM32 HAL库的编程范式 拿到一块STM32开发板,第一件事是什么?我相信绝大多数工程师和爱好者的答案都是:点灯。这个看似简单的“Hello World”操作,却是我们叩开STM32 HAL库开发…

作者头像 李华
网站建设 2026/8/13 9:22:43

Scratch Workspaces:解决LLM复杂任务处理难题的工程范式

你有没有遇到过这种情况:给一个大语言模型(LLM)一个复杂的、多步骤的任务,比如“分析这份财报,总结关键风险,并生成一份给管理层的建议报告”。模型开始输出了,前半部分分析得头头是道&#xff…

作者头像 李华
网站建设 2026/8/13 9:22:26

RAG系统智能检索路由:四层框架解决多路径选择难题

1. 项目概述:从面试题到工程化思考“你的 RAG 有几种检索路径?怎么决定走哪条?” 这问题一抛出来,很多做 RAG 的朋友可能心里会咯噔一下。我们平时聊 RAG,张口闭口就是向量检索、Embedding 模型、Chunk 策略&#xff0…

作者头像 李华