Railway域名管理Skill railway-domain

这个技能用于管理Railway云服务的域名配置,包括添加Railway提供的域名和自定义域名,生成DNS记录,查看当前域名,以及移除域名。它支持通过CLI命令操作,适用于DevOps和云原生应用部署。关键词:Railway, 域名管理, 自定义域名, DNS配置, 服务URL, 云原生

云原生架构 0 次安装 0 次浏览 更新于 3/20/2026

name: railway-domain description: 添加、查看或移除Railway服务的域名。当用户想要添加域名、生成railway域名、检查当前域名、获取服务URL或移除域名时使用。 version: 1.0.0 author: Railway license: MIT tags: [Railway, 域名, DNS, URL, 自定义域名, 基础设施] dependencies: [railway-cli] allowed-tools: Bash(railway:*)

Railway域名管理

添加、查看或移除Railway服务的域名。

何时使用

  • 用户询问“添加域名”、“生成域名”、“获取URL”
  • 用户想要添加自定义域名
  • 用户询问“我的服务URL是什么”
  • 用户想要移除域名

添加Railway域名

生成railway提供的域名(每个服务最多1个):

railway domain --json

对于特定服务:

railway domain --json --service backend

响应

返回生成的域名URL。服务必须有部署。

添加自定义域名

railway domain example.com --json

响应

返回所需的DNS记录:

{
  "domain": "example.com",
  "dnsRecords": [
    { "type": "CNAME", "host": "@", "value": "..." }
  ]
}

告诉用户将这些记录添加到他们的DNS提供商。

读取当前域名

使用railway-environment技能查看配置的域名,或直接查询:

query domains($envId: String!) {
  environment(id: $envId) {
    config(decryptVariables: false)
  }
}

域名在config.services.<serviceId>.networking中:

  • serviceDomains - Railway提供的域名
  • customDomains - 用户提供的域名

移除域名

使用railway-environment技能移除域名:

移除自定义域名

{
  "services": {
    "<serviceId>": {
      "networking": {
        "customDomains": { "<domainId>": null }
      }
    }
  }
}

移除railway域名

{
  "services": {
    "<serviceId>": {
      "networking": {
        "serviceDomains": { "<domainId>": null }
      }
    }
  }
}

然后使用railway-environment技能应用并提交更改。

CLI选项

标志 描述
[DOMAIN] 要添加的自定义域名(省略以生成railway域名)
-p, --port <PORT> 连接端口
-s, --service <NAME> 目标服务(默认为链接的服务)
--json JSON输出

可组合性

  • 读取域名:使用railway-environment技能
  • 移除域名:使用railway-environment技能
  • 应用移除:使用railway-environment技能
  • 检查服务:使用railway-service技能

错误处理

无服务链接

未链接服务。使用--service标志或运行`railway service`选择一个。

域名已存在

服务已有一个railway提供的域名。每个服务最多1个。

无部署

服务无部署。首先使用`railway up`部署。

无效域名

无效域名格式。使用有效域名如“example.com”或“api.example.com”。