CLI
Overview of the Shuttle commands
Interaction with the Shuttle platform is mainly done with the shuttle
Command Line Interface (CLI).
Some tasks, such as viewing logs, can also be done in the Shuttle Console.
After installation, you will have two commands: shuttle
and cargo shuttle
.
shuttle
is used for interacting with the NEW shuttle.dev platform.cargo shuttle
is used for interacting with the shuttle.rs platform.
This documentation covers the NEW shuttle.dev platform. Go to docs.shuttle.rs to view the docs for the shuttle.rs platform.
To get an overview of available commands, subcommands, and options, run:
Commands
Command | Description |
---|---|
init | Generate a Shuttle project from a template |
run | Run a Shuttle service locally |
deploy | Deploy a Shuttle service |
deployment | Manage deployments of a Shuttle service [aliases: depl] |
logs | View logs of a Shuttle service |
project | Manage projects on Shuttle [aliases: proj] |
resource | Manage resources [aliases: res] |
certificate | Manage SSL certificates for custom domains [aliases: cert] |
account | Show info about your Shuttle account [aliases: acc] |
login | Login to the Shuttle platform |
logout | Log out of the Shuttle platform |
generate | Generate shell completions and man page |
feedback | Open an issue on GitHub and provide feedback |
upgrade | Upgrade the cargo-shuttle binary |
help | Print this message or the help of the given subcommand(s) |
Cookbook / Cheat Sheet
These are some useful sequences of commands that are handy to keep in your back pocket.
For full documentation, use --help
on the respective command.
Use the global --debug
flag to print detailed debug output.
Get started
cargo install cargo-shuttle
: For more alternatives, see Installation.shuttle login
: Log in via the Shuttle Console.shuttle init
: Generate a project from a template.shuttle account
: Check account details.
Local run
For more tips, see Local Run.
shuttle run
: Run the project locally so you can test your changes.shuttle run --port 8080
: Change the local port.shuttle run --port 8080 --external
: Expose to local network by listening on0.0.0.0
.shuttle run --secrets <file>
: Use a non-default secrets file for this run.shuttle run --release
: Compile with release mode.
Start and deploy a project
shuttle project create
: Start the container for this project on Shuttle.shuttle deploy
: Deploy the project to Shuttle.shuttle deploy --no-follow
: Donβt poll deployment state. Alias:--nf
.shuttle deploy --secrets <file>
: Use a non-default secrets file for this deployment. It must be located in the same folder that Secrets.toml should be in.
Manage projects
shuttle project list
: List your projects.shuttle project status
: Check the state of this project.shuttle project link
: Link this project folder to a project on Shuttle.shuttle project delete
: Delete a project.shuttle project update name <new-name>
: Rename a project.
Manage deployments and logs
shuttle deployment list
: List deployments in this project.shuttle deployment status
: Show status of the currently running deployment.shuttle deployment stop
: Stop any currently running deployments.shuttle logs
: Get all logs from the currently running deployment.shuttle logs --latest
: Get all logs from the latest deployment.shuttle logs <id>
: Get all logs from a specific deployment.shuttle logs --raw
: Print the logs without timestamps and origin tags. The--raw
flag is also available for therun
anddeploy
commands.
Manage resources
shuttle resource list
: List resources linked to this project.shuttle resource delete <type>
: Delete a resource such as databases and secrets.
Shell completions
Use shuttle generate shell <shell>
with one of: bash, elvish, fish, powershell, zsh.
Example configuration for Zsh on Linux: add eval "$(shuttle generate shell zsh)"
to ~/.zshrc
.
Utility
shuttle <command> --debug
: Turn on tracing output for Shuttle libraries. (WARNING: can print sensitive data)shuttle deploy --output-archive <path>
: Dump the deployment archive to disk instead of deploying it. Useful for debugging.
Was this page helpful?