[ PROMPT_NODE_26150 ]
variables
[ SKILL_DOCUMENTATION ]
# 变量参考
Railway 中的变量支持引用其他服务、共享变量以及 Railway 提供的内置值。
## 模板语法
${{NAMESPACE.VAR}}
| 命名空间 | 描述 |
|-----------|-------------|
| `shared` | 共享变量 (项目范围内) |
| `` | 来自其他服务的变量 (区分大小写) |
## 示例
**引用共享变量:**
{ "value": "${{shared.DOMAIN}}" }
**引用其他服务的变量:**
{ "value": "${{api.API_KEY}}" }
**与文本组合:**
{ "value": "https://${{shared.DOMAIN}}/api" }
## Railway 内置变量
Railway 会自动将这些变量注入到每个服务中。
### 网络
| 变量 | 描述 | 示例 | 可用性 |
|----------|-------------|---------|--------------|
| `RAILWAY_PUBLIC_DOMAIN` | 公共域名 | `myapp.up.railway.app` | 仅当服务有域名时 |
| `RAILWAY_PRIVATE_DOMAIN` | 私有 DNS (仅限内部) | `myapp.railway.internal` | 始终可用 |
| `RAILWAY_TCP_PROXY_DOMAIN` | TCP 代理域名 | `roundhouse.proxy.rlwy.net` | 仅当启用 TCP 代理时 |
| `RAILWAY_TCP_PROXY_PORT` | TCP 代理端口 | `11105` | 仅当启用 TCP 代理时 |
**注意:** `RAILWAY_PUBLIC_DOMAIN` 仅在服务配置了域名时可用。
在引用前请检查服务的环境配置以确认域名是否存在。
### 上下文
| 变量 | 描述 |
|----------|-------------|
| `RAILWAY_PROJECT_ID` | 项目 ID |
| `RAILWAY_PROJECT_NAME` | 项目名称 |
| `RAILWAY_ENVIRONMENT_ID` | 环境 ID |
| `RAILWAY_ENVIRONMENT_NAME` | 环境名称 |
| `RAILWAY_SERVICE_ID` | 服务 ID |
| `RAILWAY_SERVICE_NAME` | 服务名称 |
| `RAILWAY_DEPLOYMENT_ID` | 部署 ID |
| `RAILWAY_REPLICA_ID` | 副本 ID |
| `RAILWAY_REPLICA_REGION` | 区域 (例如 `us-west2`) |
### 卷 (如果已挂载)
| 变量 | 描述 |
|----------|-------------|
| `RAILWAY_VOLUME_NAME` | 卷名称 |
| `RAILWAY_VOLUME_MOUNT_PATH` | 挂载路径 |
### Git (如果从 GitHub 部署)
| 变量 | 描述 |
|----------|-------------|
| `RAILWAY_GIT_COMMIT_SHA` | 提交 SHA |
| `RAILWAY_GIT_BRANCH` | 分支名称 |
| `RAILWAY_GIT_REPO_NAME` | 仓库名称 |
| `RAILWAY_GIT_REPO_OWNER` | 仓库所有者 |
| `RAILWAY_GIT_AUTHOR` | 提交作者 |
| `RAILWAY_GIT_COMMIT_MESSAGE` | 提交信息 |
## 服务互联
### 前端 → 后端 (公共网络)
使用场景:浏览器向 API 发起请求 (浏览器无法访问