最近刷开源社区时,我发现了一个新玩具——UPage(官方地址:点击直达),是凌霞夏软件的新产品,它能让我们用自然语言描述需求,然后自动生成对应的代码,甚至支持多页面管理和一键部署!
部署前必看:UPage官方要求与海外服务器选购指南
今天我就带着大家一起来使用Docker部署并且试用一下它的功能吧~由于涉及到AI功能,我将使用到OpenAI的接口进行演示(也可以选用国内的AI服务提供商哦),所以我选择使用海外的服务器。
在选择服务器前,我们先来看看upage的官方文档(点我直达)。
Docker 已安装(推荐 Docker 20.10.0 或更高版本)
至少 2GB 可用内存
至少 2GB 可用磁盘空间
互联网连接(用于拉取 Docker 镜像和访问大模型 API)
以上官方文档中对服务器的要求。
腾讯云轻量应用服务器的海外节点配置简单、1Panel可视化服务器管理面板(自动安装Docker),对新手友好且性价比高。所以我选择使用腾讯云轻量应用服务器进行演示(可以点我购买哦~)。
我们可以选择东京的服务器,套餐类型“入门型”中30元/月、33元/月的服务器就是符合Upage要求的哦~
登录服务器&环境初始化:创建目录与基础命令实操
那选择好服务器并且付款后,我们需要来到防火墙,放行3000和8090端口。
放行好端口后,我们点击右上角的“登录”按钮即可登录到服务器了哦。
登录到服务器后我们输入以下命令拉取UPage的最新Docker镜像:
docker pull halohub/upage:latest
等待下载完成后,我们输入以下命令创建目录:
mkdir -p ~/upage/data
mkdir -p ~/upage/logs
mkdir -p ~/upage/storag
核心步骤:拉取UPage镜像+一键启动容器的完整命令解析
创建完成后,我们来看一下启动docker的命令:
docker run -d \
--name upage \
--restart unless-stopped \
-p 3000:3000 \ # 端口映射(宿主机3000→容器3000)
-e LLM_PROVIDER=OpenAI \ # AI服务商配置
-e PROVIDER_API_KEY=your-openai-api-key \ # API密钥
-e LLM_DEFAULT_MODEL=gpt-4-turbo \ # 主模型
-e LLM_MINOR_MODEL=gpt-3.5-turbo \ # 辅助模型
-v ~/upage/data:/app/data \ # 数据卷(数据库/配置)
-v ~/upage/logs:/app/logs \ # 日志卷
-v ~/upage/storage:/app/storage \ # 文件存储卷(上传文件)
halohub/upage:latest
我们需要关注的主要有这几个:
-e LLM_PROVIDER=OpenAI \ #AI提供商
-e PROVIDER_BASE_URL=your-openai-api-base-url \ #API基础URL(我们可以不填哦)
-e PROVIDER_API_KEY=your-openai-api-key \ #API密钥
-e LLM_DEFAULT_MODEL=your-default-model \ #生成页面所使用的主要模型(我们可以用gpt-4-turbo)
-e LLM_MINOR_MODEL=your-minor-model \ #辅助页面生成所使用的次级模型(我们可以用gpt-3.5-turbo)
那填写完成后就是这样子的~
docker run -d \
--name upage \
--restart unless-stopped \
-p 3000:3000 \
-e LLM_PROVIDER=OpenAI \
-e PROVIDER_BASE_URL=sk-****** \ #(大家把这里换成自己的OpenAI秘钥哦)
-e PROVIDER_API_KEY=your-openai-api-key \
-e LLM_DEFAULT_MODEL=gpt-4-turbo \
-e LLM_MINOR_MODEL=gpt-3.5-turbo \
-v ~/upage/data:/app/data \
-v ~/upage/logs:/app/logs \
-v ~/upage/storage:/app/storage \
halohub/upage:latest
我们把修改好的命令复制到服务器的命令行中执行就可以啦~
这样就代表启动成功了哦~
部署完成!通过IP:3000端口访问你的AI网页生成器
最后我们在浏览器中输入IP:3000端口就可以访问了~
下一步我们将实测UPage的AI生成功能——比如输入‘极简个人主页’会生成什么样的代码?下期更新详细体验报告,敬请期待!