{"id":13581972,"url":"https://github.com/vultr/vultr-cli","last_synced_at":"2025-05-14T19:04:38.303Z","repository":{"id":37470618,"uuid":"189607151","full_name":"vultr/vultr-cli","owner":"vultr","description":"Official command line tool for Vultr services","archived":false,"fork":false,"pushed_at":"2025-05-06T15:20:46.000Z","size":6019,"stargazers_count":493,"open_issues_count":28,"forks_count":79,"subscribers_count":12,"default_branch":"master","last_synced_at":"2025-05-07T17:15:17.282Z","etag":null,"topics":["cli","cobra","vultr","vultr-cli"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/vultr.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-31T14:25:48.000Z","updated_at":"2025-05-06T15:20:51.000Z","dependencies_parsed_at":"2023-01-28T15:03:37.612Z","dependency_job_id":"ad45cf2b-f5e6-4ea2-ade9-8af133b0a11f","html_url":"https://github.com/vultr/vultr-cli","commit_stats":null,"previous_names":[],"tags_count":73,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultr%2Fvultr-cli","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultr%2Fvultr-cli/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultr%2Fvultr-cli/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/vultr%2Fvultr-cli/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/vultr","download_url":"https://codeload.github.com/vultr/vultr-cli/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252922316,"owners_count":21825639,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","cobra","vultr","vultr-cli"],"created_at":"2024-08-01T15:02:21.545Z","updated_at":"2025-05-07T17:15:30.910Z","avatar_url":"https://github.com/vultr.png","language":"Go","funding_links":[],"categories":["Go"],"sub_categories":[],"readme":"# vultr-cli\n\nThe Vultr Command Line Interface\n\n```\nvultr-cli is a command line interface for the Vultr API\n\nUsage:\n  vultr-cli [command]\n\nAvailable Commands:\n  account            Display account information\n  apps               Display applications\n  backups            Display backups\n  bare-metal         Commands to manage bare metal servers\n  billing            Display billing information\n  block-storage      Commands to manage block storage\n  completion         Generate the autocompletion script for the specified shell\n  container-registry Commands to interact with container registries\n  cdn                Commands to manage your CDN zones\n  database           Commands to manage databases\n  dns                Commands to control DNS records\n  firewall           Commands to manage firewalls\n  help               Help about any command\n  inference          Commands to interact with serverless inference subscriptions\n  instance           Commands to interact with instances\n  iso                Commands to manage ISOs\n  kubernetes         Commands to manage kubernetes clusters\n  load-balancer      Commands to managed load balancers\n  marketplace        Display marketplace information\n  object-storage     Commands to manage object storage\n  os                 Display available operating systems\n  plans              Display available plan information\n  regions            Display regions information\n  reserved-ip        Commands to interact with reserved IPs\n  script             Commands to interact with startup scripts\n  snapshot           Commands to interact with snapshots\n  ssh-key            Commands to manage SSH keys\n  user               Commands to manage users\n  version            Display the vultr-cli version\n  vpc                Commands to manage VPCs\n  vpc2               Commands to manage VPC2 networks\n\nFlags:\n      --config string   config file (default is $HOME/.vultr-cli.yaml)\n  -h, --help            help for vultr-cli\n  -o, --output string   output format [ text | json | yaml ] (default \"text\")\n\nUse \"vultr-cli [command] --help\" for more information about a command.\n```\n\n## Installation\n\nThese are the options available to install `vultr-cli`:\n1. Download a release from GitHub\n2. From source\n3. Package Manager\n  - Arch Linux\n  - Brew\n  - OpenBSD (-current)\n  - Snap (Coming soon)\n  - Chocolatey\n4. Docker\n\n### GitHub Release\nIf you are to visit the `vultr-cli` [releases](https://github.com/vultr/vultr-cli/releases) page. You can download a compiled version of `vultr-cli` for you Linux/MacOS/Windows in 64bit.\n\n### Building from source\n\nYou will need Go installed on your machine in order to work with the source (and make if you decide to pull the repo down).\n\n`go install github.com/vultr/vultr-cli/v3@latest`\n\nAnother way to build from source is to\n\n```sh\ngit clone git@github.com:vultr/vultr-cli.git or git clone https://github.com/vultr/vultr-cli.git\ncd vultr-cli\nmake builds/vultr-cli_(pass name of os + arch, as shown below)\n```\n\nThe available make build options are\n- make builds/vultr-cli_darwin_amd64\n- make builds/vultr-cli_darwin_arm64\n- make builds/vultr-cli_linux_386\n- make builds/vultr-cli_linux_amd64\n- make builds/vultr-cli_linux_arm64\n- make builds/vultr-cli_windows_386.exe\n- make builds/vultr-cli_windows_amd64.exe\n- make builds/vultr-cli_linux_arm\n\nNote that the latter method will install the `vultr-cli` executable in `builds/vultr-cli_(name of os + arch)`.\n\n### Installing on Arch Linux\n\n```sh\npacman -S vultr-cli\n```\n\n### Installing via Brew\n\n```sh\nbrew install vultr/vultr-cli/vultr-cli\n```\n\n### Installing on Fedora\n\n```sh\ndnf install vultr-cli\n```\n\n### Installing on OpenBSD\n\n```sh\npkg_add vultr-cli\n```\n\n### Docker\nYou can find the image on [Docker Hub](https://hub.docker.com/repository/docker/vultr/vultr-cli). To install the latest version via `docker`:\n\n```sh\ndocker pull vultr/vultr-cli:latest\n```\n\nTo pull an older image, you can pass the version string in the tag. For example:\n```sh\ndocker pull vultr/vultr-cli:v2.15.1\n```\n\nThe available versions are listed [here](https://github.com/vultr/vultr-cli/releases).\n\nAs described in the next section, you must authenticate in order to use the CLI. To pass the environment variable into docker, you can do so via:\n\n```sh\ndocker run -e VULTR_API_KEY vultr/vultr-cli:latest instance list\n```\n\nThis assumes you've already set the environment variable in your shell environment, otherwise, you can pass it in via `-e VULTR_API_KEY=\u003cyour api key\u003e`\n\n## Using Vultr-cli\n\n### Authentication\n\nIn order to use `vultr-cli` you will need to export your [Vultr API KEY](https://my.vultr.com/settings/#settingsapi)\n\n`export VULTR_API_KEY=\u003cyour api key\u003e`\n\n### Examples\n\n`vultr-cli` can interact with all of your Vultr resources. Here are some basic examples to get you started:\n\n##### List all available instances\n`vultr-cli instance list`\n\n##### Create an instance\n`vultr-cli instance create --region \u003cregion-id\u003e --plan \u003cplan-id\u003e --os \u003cos-id\u003e --host \u003chostname\u003e`\n\n##### Create a DNS Domain\n`vultr-cli dns domain create --domain \u003cdomain-name\u003e --ip \u003cip-address\u003e`\n\n##### Utilizing a boolean flag\nYou should use = when using a boolean flag.\n\n`vultr-cli instance create --region \u003cregion-id\u003e --plan \u003cplan-id\u003e --os \u003cos-id\u003e --host \u003chostname\u003e --notify=true`\n\n##### Utilizing the config flag\nThe config flag can be used to specify the vultr-cli.yaml file path when it's outside the default location (default is $HOME/.vultr-cli.yaml). If the file has the `api-key` defined, the CLI will use the vultr-cli.yaml config, otherwise it will default to reading the environment variable for the api key.\n\n`vultr-cli instance list --config /Users/myuser/vultr-cli.yaml`\n\n### Example vultr-cli.yaml config file\n\nCurrently the only available field that you can use with a config file is `api-key`. Your yaml file will have a single entry which would be:\n\n`api-key: MYKEY`\n\n### CLI Autocompletion\n`vultr-cli completion` will return autocompletions, but this feature requires setup.\n\nSome guides:\n\n\u003cpre\u003e\n\u003ch4\u003eBash:\u003c/h4\u003e\n  $ source \u003c(vultr-cli completion bash)\n\n  \u003cb\u003eTo load completions for each session, execute once:\u003c/b\u003e\n  \u003cb\u003eLinux:\u003c/b\u003e\n  $ vultr-cli completion bash \u003e /etc/bash_completion.d/vultr-cli\n\n  \u003cb\u003emacOS:\u003c/b\u003e\n  $ vultr-cli completion bash \u003e /usr/local/etc/bash_completion.d/vultr-cli\n\n\u003ch4\u003eZsh:\u003c/h4\u003e\n  \u003cb\u003eIf shell completion is not already enabled in your environment,\n  you will need to enable it.  You can execute the following once:\u003c/b\u003e\n\n  $ echo \"autoload -U compinit; compinit\" \u003e\u003e ~/.zshrc\n\n  \u003cb\u003eTo load completions for each session, execute once:\u003c/b\u003e\n  $ vultr-cli completion zsh \u003e \"${fpath[1]}/_vultr-cli\"\n\n  You will need to start a new shell for this setup to take effect.\n\n\u003ch4\u003efish:\u003c/h4\u003e\n  $ vultr-cli completion fish | source\n\n  \u003cb\u003eTo load completions for each session, execute once:\u003c/b\u003e\n  $ vultr-cli completion fish \u003e ~/.config/fish/completions/vultr-cli.fish\n\n\u003ch4\u003ePowerShell:\u003c/h4\u003e\n  PS\u003e vultr-cli completion powershell | Out-String | Invoke-Expression\n\n  \u003cb\u003eTo load completions for every new session, run:\u003c/b\u003e\n  PS\u003e vultr-cli completion powershell \u003e vultr-cli.ps1\n  \u003cb\u003eand source this file from your PowerShell profile.\u003c/b\u003e\n\u003c/pre\u003e\n\n## Contributing\nFeel free to send pull requests our way! Please see the [contributing guidelines](CONTRIBUTING.md).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvultr%2Fvultr-cli","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fvultr%2Fvultr-cli","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fvultr%2Fvultr-cli/lists"}