fly
Setup
macOS:
CODEBLOCK0
Linux:
CODEBLOCK1
Verify installation:
CODEBLOCK2
Always use --json flag when calling commands programmatically (where supported).
Authentication
CODEBLOCK3
Check auth status:
CODEBLOCK4
Resources
Apps
| Command | Description |
|---|
| INLINECODE1 | Create and configure a new app |
| INLINECODE2 |
List all apps |
|
fly apps create <name> | Create a new app |
|
fly apps destroy <name> | Destroy an app |
|
fly status | Show app status |
|
fly info | Show app details |
Deploy
| Command | Description |
|---|
| INLINECODE7 | Deploy the app |
| INLINECODE8 |
Deploy a specific Docker image |
|
fly deploy --strategy rolling | Deploy with rolling strategy |
|
fly releases | List recent releases |
Logs
| Command | Description |
|---|
| INLINECODE11 | Stream app logs |
| INLINECODE12 |
Stream logs for a specific app |
Scaling
| Command | Description |
|---|
| INLINECODE13 | Scale to 2 instances |
| INLINECODE14 |
Set VM size |
|
fly scale vm shared-cpu-1x --memory 512 | Set VM size with memory |
|
fly scale show | Show current scale settings |
|
fly regions list | List available regions |
|
fly regions add <region> | Add a region |
Secrets
| Command | Description |
|---|
| INLINECODE19 | List all secrets |
| INLINECODE20 |
Set a secret |
|
fly secrets set KEY1=val1 KEY2=val2 | Set multiple secrets |
|
fly secrets unset KEY | Remove a secret |
Volumes
| Command | Description |
|---|
| INLINECODE23 | List all volumes |
| INLINECODE24 |
Create a volume (size in GB) |
|
fly volumes create <name> --size 1 --region <region> | Create volume in specific region |
|
fly volumes destroy <id> | Destroy a volume |
|
fly volumes extend <id> --size 5 | Extend volume size |
Certificates
| Command | Description |
|---|
| INLINECODE28 | List all certificates |
| INLINECODE29 |
Add a certificate for a domain |
|
fly certs show <domain> | Show certificate details |
|
fly certs delete <domain> | Remove a certificate |
Machines
| Command | Description |
|---|
| INLINECODE32 | List all machines |
| INLINECODE33 |
Start a machine |
|
fly machine stop <id> | Stop a machine |
|
fly machine destroy <id> | Destroy a machine |
|
fly machine status <id> | Show machine status |
SSH and Proxy
| Command | Description |
|---|
| INLINECODE37 | Open SSH console to the app |
| INLINECODE38 |
Run a command via SSH |
|
fly proxy 5432 | Proxy a port to local machine |
|
fly proxy 5432:5432 | Proxy with explicit local:remote ports |
Global Flags
| Flag | Description |
|---|
| INLINECODE41 | Output result as JSON |
| INLINECODE42 |
Specify app name |
|
--config <path> | Path to fly.toml config file |
|
--region <region> | Specify region |
|
--verbose | Enable verbose output |
fly
安装
macOS:
bash
brew install flyctl
Linux:
bash
curl -L https://fly.io/install.sh | sh
验证安装:
bash
fly --version
以编程方式调用命令时(如果支持),始终使用 --json 标志。
身份认证
bash
fly auth login
检查认证状态:
bash
fly auth whoami
资源
应用
| 命令 | 描述 |
|---|
| fly launch | 创建并配置新应用 |
| fly apps list |
列出所有应用 |
| fly apps create <名称> | 创建新应用 |
| fly apps destroy <名称> | 销毁应用 |
| fly status | 显示应用状态 |
| fly info | 显示应用详情 |
部署
| 命令 | 描述 |
|---|
| fly deploy | 部署应用 |
| fly deploy --image <镜像> |
部署特定 Docker 镜像 |
| fly deploy --strategy rolling | 使用滚动策略部署 |
| fly releases | 列出最近的发布版本 |
日志
| 命令 | 描述 |
|---|
| fly logs | 流式传输应用日志 |
| fly logs --app <名称> |
流式传输特定应用的日志 |
扩缩容
| 命令 | 描述 |
|---|
| fly scale count 2 | 扩展到 2 个实例 |
| fly scale vm shared-cpu-1x |
设置虚拟机大小 |
| fly scale vm shared-cpu-1x --memory 512 | 设置虚拟机大小及内存 |
| fly scale show | 显示当前扩缩容设置 |
| fly regions list | 列出可用区域 |
| fly regions add <区域> | 添加区域 |
密钥
| 命令 | 描述 |
|---|
| fly secrets list | 列出所有密钥 |
| fly secrets set KEY=value |
设置密钥 |
| fly secrets set KEY1=val1 KEY2=val2 | 设置多个密钥 |
| fly secrets unset KEY | 移除密钥 |
卷
| 命令 | 描述 |
|---|
| fly volumes list | 列出所有卷 |
| fly volumes create <名称> --size 1 |
创建卷(大小以 GB 为单位) |
| fly volumes create <名称> --size 1 --region <区域> | 在特定区域创建卷 |
| fly volumes destroy
| 销毁卷 |
| fly volumes extend --size 5 | 扩展卷大小 |
证书
| 命令 | 描述 |
|---|
| fly certs list | 列出所有证书 |
| fly certs create <域名> |
为域名添加证书 |
| fly certs show <域名> | 显示证书详情 |
| fly certs delete <域名> | 移除证书 |
机器
| 命令 | 描述 |
|---|
| fly machine list | 列出所有机器 |
| fly machine start <ID> |
启动机器 |
| fly machine stop | 停止机器 |
| fly machine destroy | 销毁机器 |
| fly machine status | 显示机器状态 |
SSH 和代理
| 命令 | 描述 |
|---|
| fly ssh console | 打开 SSH 控制台连接到应用 |
| fly ssh console --command ls -la |
通过 SSH 运行命令 |
| fly proxy 5432 | 将端口代理到本地机器 |
| fly proxy 5432:5432 | 使用显式的本地:远程端口进行代理 |
全局标志
| 标志 | 描述 |
|---|
| --json | 以 JSON 格式输出结果 |
| --app <名称> |
指定应用名称 |
| --config <路径> | fly.toml 配置文件的路径 |
| --region <区域> | 指定区域 |
| --verbose | 启用详细输出 |