Digital Ocean
创建虚拟机实例
在本节中,我们将创建一个虚拟机实例(Droplet)。如需更多信息,请参阅官方指南。
首先,从下拉菜单中点击Droplets

选择数据区域和每月6美元的基础型虚拟机实例类型

选择身份验证方法。在本例中,我们将使用密码

过一会儿,你应该能看到你的水滴已成功创建

如何连接到您的虚拟机
对于Windows系统,请遵循此指南。
对于Mac/Linux系统,请按照此指南进行操作。
安装Docker
使用curl命令从get.docker.com网站下载get-docker.sh脚本,并使用-o参数指定脚本的保存路径
使用sudo命令执行get-docker.sh脚本
安装docker-compose:
使用sudo命令,通过curl下载“https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)”文件,并将下载的文件保存到/usr/local/bin/docker-compose目录中设置权限:
使用sudo命令为/usr/local/bin/docker-compose添加可执行权限设置
克隆仓库
git clone https://github.com/FlowiseAI/Flowise.git进入docker文件夹
进入Flowise目录 && 进入docker目录创建一个
.env文件。你可以使用你喜欢的编辑器。我将使用nano
nano .env
指定环境变量:
端口=3000
数据库路径=/root/.flowise
SECRETKEY_PATH=/root/.flowise
日志路径=/root/.flowise/logs
BLOB_STORAGE_PATH=/root/.flowise/storage然后按
Ctrl + X退出,按Y保存文件运行docker compose
docker compose up -d然后,您可以查看该应用程序:“您的公共IPv4 DNS”:3000。示例:
176.63.19.226:3000你可以通过以下方式关闭应用程序:
docker compose 停止您可以通过以下方式获取最新镜像:
docker 拉取 flowiseai/flowise 镜像添加反向代理和SSL
反向代理是将应用服务器暴露给互联网的推荐方法。它使我们能够仅通过URL连接到我们的虚拟机实例,而无需使用服务器IP和端口号。这样做的好处包括:将应用服务器与直接互联网访问隔离开来,从而提高了安全性;能够集中进行防火墙保护;对于常见的威胁(如拒绝服务攻击)而言,攻击面被最小化;最重要的是,对于我们的目的而言,能够在单个位置终止SSL/TLS加密。
如果您的Droplet上没有SSL,那么在现代浏览器中,可嵌入的小部件和API端点将无法访问。这是因为浏览器已经开始弃用HTTP而转向HTTPS,并会阻止来自HTTPS加载页面的HTTP请求。
步骤1 — 安装Nginx
Nginx可通过默认仓库使用apt进行安装。请更新您的仓库索引,然后安装Nginx:
sudo apt 更新
使用sudo命令安装nginx按 Y 确认安装。如果系统要求您重新启动服务,请按 ENTER 接受默认设置。
您需要通过防火墙允许访问Nginx。在根据初始服务器先决条件设置好服务器后,使用ufw添加以下规则:
使用sudo命令允许ufw(防火墙)通过“Nginx HTTP”现在你可以验证Nginx是否正在运行:
systemctl status nginx输出:
● nginx.service - 一个高性能的Web服务器和反向代理服务器
已加载:已加载(/lib/systemd/system/nginx.service;已启用;供应商预设:已启用)
活动状态:自2022年8月29日(星期一)06:52:46(协调世界时)起处于活动状态(正在运行);39分钟前
文档:man:nginx(8)
主进程ID:9919(nginx)
任务数:2(限制:2327)
内存:290万
CPU:50毫秒
CGroup:/system.slice/nginx.service
├─9919 "nginx: 主进程 /usr/sbin/nginx -g daemon on; master_process on;"
└─9920 “nginx:工作进程接下来,您将添加一个包含您的域名和应用服务器代理的自定义服务器块。
步骤2 — 配置您的服务器块和DNS记录
建议的做法是为新添加的服务器块创建自定义配置文件,而不是直接编辑默认配置。
使用nano或您偏好的文本编辑器创建并打开一个新的Nginx配置文件:
使用sudo命令打开/etc/nginx/sites-available/your_domain文件将以下内容插入到你的新文件中,确保将
your_domain替换为你自己的域名:
服务器 {
监听80端口;
监听 [::]:80;
server_name your_domain; #示例:demo.flowiseai.com
位置 / {
代理转发至 http://localhost:3000;
代理HTTP版本1.1;
设置主机头为$host;
设置代理头信息,将Upgrade字段设置为$http_upgrade;
proxy_set_header Connection 'upgrade';;
proxy_cache_bypass $http_upgrade;;
}
}保存并退出,使用
nano时,可以通过按下CTRL+O,然后按下CTRL+X来完成此操作。接下来,通过在Nginx启动时读取的sites-enabled目录中创建一个指向此配置文件的链接来启用它,再次确保将
your_domain替换为您自己的域名:
使用sudo命令,将/etc/nginx/sites-available/your_domain链接到/etc/nginx/sites-enabled/现在,您可以测试配置文件是否存在语法错误:
使用sudo命令运行nginx的测试命令如未报告任何问题,请重启Nginx以应用您的更改:
sudo systemctl 重启 nginx前往你的DNS提供商,并添加一个新的A记录。记录的名称将是你自己的域名,记录的值将是你虚拟机(droplet)的公共IPv4地址

Nginx现已配置为应用服务器的反向代理。现在,您应该能够打开应用程序:http://yourdomain.com。
步骤 3 — 为 HTTPS (SSL) 安装 Certbot
如果你想为你的虚拟机(Droplet)添加一个安全的https连接,例如https://yourdomain.com,你需要执行以下步骤:
要在NGINX上安装Certbot并启用HTTPS,我们需要使用Python。因此,首先,让我们来设置一个虚拟环境:
使用apt安装python3.10-venv
使用sudo命令,在/opt/certbot/目录下运行python3 -m venv
使用sudo命令执行以下操作:/opt/certbot/bin/pip install --upgrade pip之后,运行以下命令来安装Certbot:
使用sudo命令执行以下操作:/opt/certbot/bin/pip install certbot certbot-nginx现在,执行以下命令以确保
certbot命令可以运行:
使用sudo命令将/opt/certbot/bin/certbot链接到/usr/bin/certbot最后,运行以下命令获取证书,并让Certbot自动修改NGINX配置,启用HTTPS:
使用sudo运行certbot命令,并指定使用nginx作为web服务器完成证书生成向导后,我们将能够通过HTTPS使用地址https://yourdomain.com访问我们的虚拟机
设置自动续订
为了让Certbot能够自动续订证书,只需运行以下命令添加一个cron作业即可:
将以下命令输出到/etc/crontab文件,并重定向到/dev/null:`echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab > /dev/null`恭喜!
您已成功在您的云滴上设置了Flowise,并且您的域名上已安装了SSL证书🥳
在Digital Ocean上更新Flowise的步骤
导航至你安装flowise的目录
进入Flowise/docker目录停止并删除Docker镜像
注意:由于数据库存储在单独的文件夹中,因此此操作不会删除您的流程
使用sudo命令停止docker compose
使用sudo命令执行docker compose的rm操作拉取最新的Flowise镜像
你可以在这里查看最新版本发布信息
docker 拉取 flowiseai/flowise 镜像启动Docker
docker compose up -dLast updated