第 1 步:登录 AWS 控制台
- 打开您的网络浏览器并导航到 AWS 管理控制台。
- 使用您的 AWS 账户凭证登录。
第 2 步:导航到 ECS
- 点击左上角的 "Services" 下拉菜单。
- 从服务列表中选择 "ECS"。
第 3 步:创建 3 个任务定义
在 ECS 仪表板中,导航到左侧边栏中的 "Task Definitions" 部分。

点击 "Create new Task Definition"。

任务定义 1(前端 - KeepUI):
- 任务定义系列:keep-frontend

- 按如下方式配置您的容器定义:
- 基础设施要求:
- 启动类型:AWS Fargate
- 操作系统、架构、网络模式:Linux/X86_64
- 任务大小:
- CPU:1 vCPU
- 内存:2 GB
- 如果您计划使用 secrets manager 等,任务角色和任务执行角色是可选的,那么请创建一个任务执行角色以允许访问您创建的 secret manager。

- 容器详情:
- 名称:keep-frontend
- 镜像 URI:us-central1-docker.pkg.dev/keephq/keep/keep-api:latest
- 端口映射:
- 容器端口:3000
- 协议:TCP

- 环境变量:(可以是静态的,或者您可以使用 parameter store 或 secrets manager)
- DATABASE_CONNECTION_STRING
- AUTH_TYPE
- KEEP_JWT_SECRET
- KEEP_DEFAULT_USERNAME
- KEEP_DEFAULT_PASSWORD
- SECRET_MANAGER_TYPE
- SECRET_MANAGER_DIRECTORY
- USE_NGROK
- KEEP_API_URL (以下变量如果您不想使用 websocket 是可选的)
- PUSHER_DISABLED (以下变量如果您想使用 websocket 是可选的)
- PUSHER_APP_ID
- PUSHER_APP_KEY
- PUSHER_APP_SECRET
- PUSHER_HOST
- PUSHER_PORT

- 检查并创建您的任务定义。
- 基础设施要求:
任务定义 2(后端 - keepAPI):
- 按如下方式配置您的容器定义:
- 任务定义系列:keep-frontend

- 基础设施要求:
- 启动类型:AWS Fargate
- 操作系统、架构、网络模式:Linux/X86_64
- 任务大小:
- CPU:1 vCPU
- 内存:2 GB
- 如果您计划使用 secrets manager 等,任务角色和任务执行角色是可选的,那么请创建一个任务执行角色以允许访问您创建的 secret manager。

- 容器详情:
- 名称:keep-backend
- 镜像 URI:us-central1-docker.pkg.dev/keephq/keep/keep-api:latest
- 端口映射:
- 容器端口:8080
- 协议:TCP

- 环境变量:(可以是静态的,或者您可以使用 parameter store 或 secrets manager)
- DATABASE_CONNECTION_STRING
- AUTH_TYPE
- KEEP_JWT_SECRET
- KEEP_DEFAULT_USERNAME
- KEEP_DEFAULT_PASSWORD
- SECRET_MANAGER_TYPE
- SECRET_MANAGER_DIRECTORY
- USE_NGROK
- KEEP_API_URL (以下变量如果您不想使用 websocket 是可选的)
- PUSHER_DISABLED (以下变量如果您想使用 websocket 是可选的)
- PUSHER_APP_ID
- PUSHER_APP_KEY
- PUSHER_APP_SECRET
- PUSHER_HOST
- PUSHER_PORT

- 存储:
- 卷名称:keep-efs
- 配置类型:在任务定义创建时配置
- 卷类型:EFS
- 存储配置:
- 文件系统 ID:选择现有 EFS 文件系统或创建新的
- 根目录:/

- 容器挂载点:
- 容器:选择您刚刚创建的容器
- 源卷:keep-efs
- 容器路径:/app
- 确保未选择 Readonly

- 检查并创建您的任务定义。
- 任务定义系列:keep-frontend
任务定义 3(Websocket):(如果您想自动刷新告警 feed,此步骤是可选的)
- 按如下方式配置您的容器定义:
- 任务定义系列:keep-frontend

- 基础设施要求:
- 启动类型:AWS Fargate
- 操作系统、架构、网络模式:Linux/X86_64
- 任务大小:
- CPU:0.25 vCPU
- 内存:1 GB
- 如果您计划使用 secrets manager 等,任务角色和任务执行角色是可选的,那么请创建一个任务执行角色以允许访问您创建的 secret manager。

- 容器详情:
- 名称:keep-websocket
- 镜像 URI:quay.io/soketi/soketi:1.4-16-debian
- 端口映射:
- 容器端口:6001
- 协议:TCP

- 环境变量:(可以是静态的,或者您可以使用 parameter store 或 secrets manager)
- SOKETI_DEBUG
- SOKETI_DEFAULT_APP_ID
- SOKETI_DEFAULT_APP_KEY
- SOKETI_DEFAULT_APP_SECRET
- SOKETI_USER_AUTHENTICATION_TIMEOUT

- 任务定义系列:keep-frontend
- 检查并创建您的任务定义。
- 任务定义系列:keep-frontend
第 4 步:创建 Keep 服务
- 在 ECS 仪表板中,导航到左侧边栏中的 "Clusters" 部分。
- 选择您要部署服务的集群。
- 点击 "Create" 按钮旁边的 "Services"。
- 配置您的服务设置。
- 检查并创建您的服务。
第 5 步:监控您的服务
- 创建服务后,在 ECS 仪表板中监控其状态。
- 您可以查看任务状态、服务事件和其他指标以确保您的服务正常运行。