← Cheatsheets
Tags: cloud, aws, vercel, netlify, cloudflare, cli, env-vars,
build, logs, rollbacks, devops
Last updated: 2026-06-26
Cloud CLI Cheatsheet
Quick Reference
| Command | Description |
aws s3 ls | List S3 buckets |
vercel | Deploy current directory |
netlify deploy --prod | Deploy to production |
npx wrangler dev | Run Worker locally |
vercel env pull | Pull env vars locally |
netlify env:list | List env vars |
wrangler secret put KEY | Set Worker secret |
wrangler d1 execute | Run SQL on D1 |
vercel rollback | Rollback deployment |
AWS CLI
S3
aws s3 ls
aws s3 cp file.txt s3://my-bucket/
aws s3 sync ./dist s3://my-bucket/ --delete
aws s3 presign s3://my-bucket/file.txt --expires 3600
Lambda
aws lambda list-functions
aws lambda invoke --function-name myfunc out.json
aws lambda update-function-code --function-name myfunc --zip-file fileb://package.zip
aws lambda update-function-configuration --function-name myfunc \
--environment Variables="{KEY=val}"
ECS / ECR
aws ecr get-login-password | docker login --username AWS \
--password-stdin <account>.dkr.ecr.<region>.amazonaws.com
docker tag myapp <account>.dkr.ecr.<region>.amazonaws.com/myapp:v1
docker push <account>.dkr.ecr.<region>.amazonaws.com/myapp:v1
aws ecs update-service --cluster c --service s --force-new-deployment
Vercel CLI
vercel # Deploy (preview)
vercel --prod # Deploy to production
vercel env pull .env.local
vercel logs myapp.vercel.app
vercel rollback
Netlify CLI
netlify deploy # Preview deploy
netlify deploy --prod # Production deploy
netlify env:set KEY value
netlify sites:list
netlify dev # Local dev with edge functions
Cloudflare Developer Platform (Wrangler)
Workers
npx wrangler init my-worker # Scaffold
npx wrangler dev # Run locally
npx wrangler deploy # Deploy
npx wrangler tail # Stream live logs
wrangler.toml
name = "my-worker"
main = "src/index.ts"
compatibility_date = "2026-06-01"
[[kv_namespaces]]
binding = "KV"
id = "abc123..."
[[d1_databases]]
binding = "DB"
database_name = "my-db"
database_id = "def456..."
[[r2_buckets]]
binding = "BUCKET"
bucket_name = "my-bucket"
Secrets & Env Vars
npx wrangler secret put API_KEY
npx wrangler secret list
# wrangler.toml
[vars]
ENVIRONMENT = "production"
[env.staging.vars]
ENVIRONMENT = "staging"
KV (Key-Value)
npx wrangler kv key put --binding=KV "key" "value"
npx wrangler kv key get --binding=KV "key"
npx wrangler kv key list --binding=KV
npx wrangler kv key delete --binding=KV "key"
D1 (SQLite)
npx wrangler d1 create my-db
npx wrangler d1 execute my-db --local --file=./schema.sql
npx wrangler d1 execute my-db --remote --command="SELECT * FROM users"
R2 (Object Storage)
npx wrangler r2 bucket create my-bucket
npx wrangler r2 object put my-bucket/file.txt --file=./file.txt
npx wrangler r2 object get my-bucket/file.txt
npx wrangler r2 object delete my-bucket/file.txt
Pages
npx wrangler pages deploy ./dist
npx wrangler pages dev ./dist
npx wrangler pages project list
CI/CD (GitHub Actions)
# Vercel
- run: vercel --prod --token=${{ secrets.VERCEL_TOKEN }}
# Netlify
- run: netlify deploy --prod --auth=${{ secrets.NETLIFY_TOKEN }}
# Cloudflare Workers
- run: npx wrangler deploy
# Cloudflare Pages
- run: npx wrangler pages deploy ./dist --project-name my-site
Tips
- Use
wrangler tail to stream live
Worker logs for production debugging.
- Cloudflare D1 is SQLite-compatible — local with
--local, remote with --remote.
- Use
wrangler deploy --env for staging/production
separation.
- Add
--token flags in CI to avoid
interactive login.