Railway部署管理Skill railway-deployment

该技能用于管理Railway平台上的应用程序部署,支持查看日志、重部署、重启或删除部署等操作。它涵盖部署生命周期管理、故障排除和日志分析,是DevOps和云原生应用维护的关键工具。关键词:Railway、部署管理、日志查看、重部署、故障排除、云原生、CI/CD。

CI/CD 0 次安装 0 次浏览 更新于 3/20/2026

name: railway-deployment description: 管理 Railway 部署 - 查看日志、重部署、重启或移除部署。用于部署生命周期(移除、停止、重部署、重启)、部署可见性(列表、状态、历史)和故障排除(日志、错误、失败、崩溃)。不用于删除服务 - 为此,请使用 railway-environment 技能并设置 isDeleted。 version: 1.0.0 author: Railway license: MIT tags: [Railway, 部署, 日志, 调试, 故障排除, 重部署, 基础设施] dependencies: [railway-cli] allowed-tools: Bash(railway:*)

Railway 部署管理

管理现有的 Railway 部署:列出、查看日志、重部署或删除。

重要:“移除部署”(railway down)停止当前部署但保留服务。要完全删除服务,请使用 railway-environment 技能并设置 isDeleted: true

何时使用

  • 用户说“移除部署”、“关闭服务”、“停止部署”、“railway down”
  • 用户想“重部署”、“重启服务”、“重启部署”
  • 用户要求“列出部署”、“显示部署历史”、“部署状态”
  • 用户要求“查看日志”、“显示日志”、“检查错误”、“调试问题”

列出部署

railway deployment list --limit 10 --json

显示部署 ID、状态和元数据。用于查找特定部署 ID 以进行日志查看或调试。

指定服务

railway deployment list --service backend --limit 10 --json

查看日志

部署日志

railway logs --lines 100 --json

在非交互模式下,流式传输自动禁用,CLI 获取日志后退出。

构建日志

railway logs --build --lines 100 --json

用于调试构建失败或查看构建输出。

失败/进行中部署的日志

默认情况下,railway logs 显示最近成功的部署。使用 --latest 查看当前部署:

railway logs --latest --lines 100 --json

过滤日志

# 仅错误
railway logs --lines 50 --filter "@level:error" --json

# 文本搜索
railway logs --lines 50 --filter "connection refused" --json

# 组合
railway logs --lines 50 --filter "@level:error AND timeout" --json

时间过滤

# 最后一小时的日志
railway logs --since 1h --lines 100 --json

# 30分钟到10分钟前的日志
railway logs --since 30m --until 10m --lines 100 --json

# 从特定时间戳开始的日志
railway logs --since 2024-01-15T10:00:00Z --lines 100 --json

格式:相对时间(30s5m2h1d1w)或 ISO 8601 时间戳。

特定部署的日志

部署日志:

railway logs <deployment-id> --lines 100 --json

构建日志:

railway logs --build <deployment-id> --lines 100 --json

railway deployment list 获取部署 ID。

注意: 部署 ID 是位置参数,不是 --deployment <id>--deployment 标志是布尔标志,用于选择部署日志(相对于 --build 用于构建日志)。

重部署

重部署最近的部署:

railway redeploy --service <name> -y

-y 标志跳过确认。适用于:

  • 通过 railway-environment 技能更改配置
  • 无需新代码重启
  • 先前部署成功但服务行为异常

仅重启容器

重启而不重新构建(获取外部资源更改):

railway restart --service <name> -y

当外部资源(S3 文件、配置映射)更改但代码未更改时使用。

移除部署

取下当前部署。服务保留但无运行部署。

# 移除链接服务的部署
railway down -y

# 移除特定服务的部署
railway down --service web -y
railway down --service api -y

这是用户说“移除部署”、“关闭”或“停止部署”时的意思。

注意: 这不删除服务。要完全删除服务,请使用 railway-environment 技能并设置 isDeleted: true

CLI 选项

deployment list

标志 描述
-s, --service <NAME> 服务名称或 ID
-e, --environment <NAME> 环境名称或 ID
--limit <N> 最大部署数(默认 20,最大 1000)
--json JSON 输出

logs

标志 描述
-s, --service <NAME> 服务名称或 ID
-e, --environment <NAME> 环境名称或 ID
-d, --deployment 显示部署日志(默认,布尔标志)
-b, --build 显示构建日志(布尔标志)
-n, --lines <N> 行数(必需)
-f, --filter <QUERY> 使用查询语法过滤
--since <TIME> 开始时间(相对或 ISO 8601)
--until <TIME> 结束时间(相对或 ISO 8601)
--latest 最近部署(即使失败)
--json JSON 输出
[DEPLOYMENT_ID] 特定部署(可选)

redeploy

标志 描述
-s, --service <NAME> 服务名称或 ID
-y, --yes 跳过确认

restart

标志 描述
-s, --service <NAME> 服务名称或 ID
-y, --yes 跳过确认

down

标志 描述
-s, --service <NAME> 服务名称或 ID
-e, --environment <NAME> 环境名称或 ID
-y, --yes 跳过确认

呈现日志

显示日志时:

  • 包括时间戳
  • 高亮错误和警告
  • 对于构建失败:显示错误并建议修复
  • 对于运行时崩溃:显示堆栈跟踪上下文
  • 总结模式(例如,“最近 100 条日志中有 15 个超时错误”)

可组合性

  • 推送新代码:使用 railway-deploy 技能
  • 检查服务状态:使用 railway-status 技能
  • 修复配置问题:使用 railway-environment 技能
  • 创建新服务:使用 railway-new 技能

错误处理

无链接服务

未链接服务。运行 `railway service` 以选择一个。

未找到部署

未找到部署。首先使用 `railway up` 进行部署。

未找到日志

部署可能太旧(日志保留限制)或服务未产生输出。