Appearance
DigitalOcean CLI (doctl)
Comprehensive DigitalOcean CLI commands and workflows for managing droplets, load balancers, databases, and Kubernetes clusters.
Installation & Authentication
Command | Description |
---|---|
doctl auth init | Initialize authentication |
doctl auth list | List authentication contexts |
doctl auth switch --context CONTEXT_NAME | Switch authentication context |
doctl account get | Get account information |
doctl balance get | Get account balance |
Droplets (Virtual Machines)
Droplet Management
Command | Description |
---|---|
doctl compute droplet list | List all droplets |
doctl compute droplet create mydroplet --size s-1vcpu-1gb --image ubuntu-20-04-x64 --region nyc1 | Create droplet |
doctl compute droplet delete DROPLET_ID | Delete droplet |
doctl compute droplet get DROPLET_ID | Get droplet details |
doctl compute droplet reboot DROPLET_ID | Reboot droplet |
doctl compute droplet power-off DROPLET_ID | Power off droplet |
doctl compute droplet power-on DROPLET_ID | Power on droplet |
doctl compute droplet shutdown DROPLET_ID | Shutdown droplet |
Droplet Actions
Command | Description |
---|---|
doctl compute droplet-action list DROPLET_ID | List droplet actions |
doctl compute droplet-action resize DROPLET_ID --size s-2vcpu-2gb | Resize droplet |
doctl compute droplet-action snapshot DROPLET_ID --snapshot-name my-snapshot | Create snapshot |
doctl compute droplet-action restore DROPLET_ID --image IMAGE_ID | Restore from image |
doctl compute droplet-action rebuild DROPLET_ID --image ubuntu-20-04-x64 | Rebuild droplet |
SSH and Access
Command | Description |
---|---|
doctl compute ssh DROPLET_NAME | SSH into droplet |
doctl compute ssh DROPLET_NAME --ssh-user root | SSH with specific user |
doctl compute ssh-key list | List SSH keys |
doctl compute ssh-key create --name mykey --public-key-file ~/.ssh/id_rsa.pub | Add SSH key |
doctl compute ssh-key delete KEY_ID | Delete SSH key |
Images and Snapshots
Command | Description |
---|---|
doctl compute image list | List all images |
doctl compute image list --public | List public images |
doctl compute image list-user | List user images |
doctl compute image get IMAGE_ID | Get image details |
doctl compute image delete IMAGE_ID | Delete image |
doctl compute image update IMAGE_ID --name new-name | Update image name |
Volumes (Block Storage)
Command | Description |
---|---|
doctl compute volume list | List all volumes |
doctl compute volume create myvolume --size 100GiB --region nyc1 | Create volume |
doctl compute volume delete VOLUME_ID | Delete volume |
doctl compute volume attach VOLUME_ID DROPLET_ID | Attach volume to droplet |
doctl compute volume detach VOLUME_ID | Detach volume |
doctl compute volume snapshot VOLUME_ID --snapshot-name my-volume-snapshot | Create volume snapshot |
Load Balancers
Command | Description |
---|---|
doctl compute load-balancer list | List load balancers |
doctl compute load-balancer create --name mylb --forwarding-rules entry_protocol:http,entry_port:80,target_protocol:http,target_port:80 --region nyc1 | Create load balancer |
doctl compute load-balancer delete LB_ID | Delete load balancer |
doctl compute load-balancer add-droplets LB_ID --droplet-ids DROPLET_ID1,DROPLET_ID2 | Add droplets to LB |
doctl compute load-balancer remove-droplets LB_ID --droplet-ids DROPLET_ID1 | Remove droplets from LB |
Networking
Firewalls
Command | Description |
---|---|
doctl compute firewall list | List firewalls |
doctl compute firewall create --name myfirewall --inbound-rules protocol:tcp,ports:22,sources:0.0.0.0/0 | Create firewall |
doctl compute firewall delete FIREWALL_ID | Delete firewall |
doctl compute firewall add-droplets FIREWALL_ID --droplet-ids DROPLET_ID | Add droplets to firewall |
doctl compute firewall remove-droplets FIREWALL_ID --droplet-ids DROPLET_ID | Remove droplets from firewall |
VPC Networks
Command | Description |
---|---|
doctl vpcs list | List VPCs |
doctl vpcs create --name myvpc --region nyc1 | Create VPC |
doctl vpcs delete VPC_ID | Delete VPC |
doctl vpcs get VPC_ID | Get VPC details |
Floating IPs
Command | Description |
---|---|
doctl compute floating-ip list | List floating IPs |
doctl compute floating-ip create --region nyc1 | Create floating IP |
doctl compute floating-ip delete FLOATING_IP | Delete floating IP |
doctl compute floating-ip-action assign FLOATING_IP DROPLET_ID | Assign floating IP |
doctl compute floating-ip-action unassign FLOATING_IP | Unassign floating IP |
Kubernetes (DOKS)
Cluster Management
Command | Description |
---|---|
doctl kubernetes cluster list | List Kubernetes clusters |
doctl kubernetes cluster create mycluster --region nyc1 --node-pool "name=worker-pool;size=s-2vcpu-2gb;count=3" | Create cluster |
doctl kubernetes cluster delete CLUSTER_ID | Delete cluster |
doctl kubernetes cluster get CLUSTER_ID | Get cluster details |
doctl kubernetes cluster kubeconfig save CLUSTER_ID | Save kubeconfig |
Node Pools
Command | Description |
---|---|
doctl kubernetes cluster node-pool list CLUSTER_ID | List node pools |
doctl kubernetes cluster node-pool create CLUSTER_ID --name new-pool --size s-2vcpu-2gb --count 2 | Create node pool |
doctl kubernetes cluster node-pool delete CLUSTER_ID POOL_ID | Delete node pool |
doctl kubernetes cluster node-pool resize CLUSTER_ID POOL_ID --count 5 | Resize node pool |
Databases
Database Clusters
Command | Description |
---|---|
doctl databases list | List database clusters |
doctl databases create mydb --engine mysql --size db-s-1vcpu-1gb --region nyc1 | Create database cluster |
doctl databases delete DATABASE_ID | Delete database cluster |
doctl databases get DATABASE_ID | Get database details |
doctl databases resize DATABASE_ID --size db-s-2vcpu-2gb | Resize database |
Database Operations
Command | Description |
---|---|
doctl databases db list DATABASE_ID | List databases |
doctl databases db create DATABASE_ID --name myapp | Create database |
doctl databases db delete DATABASE_ID myapp | Delete database |
doctl databases user list DATABASE_ID | List database users |
doctl databases user create DATABASE_ID --username myuser | Create database user |
Database Backups
Command | Description |
---|---|
doctl databases backups list DATABASE_ID | List backups |
doctl databases backups restore DATABASE_ID BACKUP_ID | Restore from backup |
Spaces (Object Storage)
Command | Description |
---|---|
doctl compute cdn list | List CDN endpoints |
doctl compute cdn create --origin spaces.example.com --domain cdn.example.com | Create CDN endpoint |
doctl compute cdn delete CDN_ID | Delete CDN endpoint |
Apps Platform
App Management
Command | Description |
---|---|
doctl apps list | List apps |
doctl apps create --spec app.yaml | Create app from spec |
doctl apps get APP_ID | Get app details |
doctl apps delete APP_ID | Delete app |
doctl apps update APP_ID --spec app.yaml | Update app |
App Deployments
Command | Description |
---|---|
doctl apps list-deployments APP_ID | List deployments |
doctl apps get-deployment APP_ID DEPLOYMENT_ID | Get deployment details |
doctl apps logs APP_ID --type build | Get build logs |
doctl apps logs APP_ID --type run | Get runtime logs |
Monitoring
Alerts
Command | Description |
---|---|
doctl monitoring alert list | List alert policies |
doctl monitoring alert create --spec alert.yaml | Create alert policy |
doctl monitoring alert delete ALERT_ID | Delete alert policy |
doctl monitoring alert get ALERT_ID | Get alert details |
Projects
Command | Description |
---|---|
doctl projects list | List projects |
doctl projects create --name myproject --description "My project" | Create project |
doctl projects get PROJECT_ID | Get project details |
doctl projects update PROJECT_ID --name "New name" | Update project |
doctl projects resources list PROJECT_ID | List project resources |
Regions and Sizes
Command | Description |
---|---|
doctl compute region list | List available regions |
doctl compute size list | List available droplet sizes |
doctl kubernetes options regions | List Kubernetes regions |
doctl kubernetes options versions | List Kubernetes versions |
doctl databases options engines | List database engines |
doctl databases options sizes | List database sizes |