Merge branch 'master' of github.com:LeCoupa/awesome-cheatsheets

This commit is contained in:
Julien Le Coupanec 2020-09-26 19:44:08 +02:00
commit 6a18dc96f1
7 changed files with 75 additions and 0 deletions

View File

@ -109,12 +109,14 @@ Feel free to take a look. You might learn new things. They have been designed to
#### Infrastructure
- [AWS CLI](tools/aws.sh)
- [Docker](tools/docker.sh)
- [Heroku CLI](tools/heroku.sh)
- [Kubernetes](tools/kubernetes.md)
- [Nanobox Boxfile](tools/nanobox_boxfile.yml)
- [Nanobox CLI](tools/nanobox_cli.sh)
- [Nginx](tools/nginx.sh)
- [PM2](tools/pm2.sh)
- [Ubuntu](tools/ubuntu.sh)
</details>

View File

@ -139,6 +139,7 @@ ps -u yourusername # lists your processes
kill <PID> # kills the processes with the ID you gave
killall <processname> # kill all processes with the name
top # displays your currently active processes
lsof # lists open files
bg # lists stopped or background jobs ; resume a stopped job in the background
fg # brings the most recent job in the foreground
fg <job> # brings job to the foreground

39
tools/aws.sh Normal file
View File

@ -0,0 +1,39 @@
##############################################################################
# AWS
##############################################################################
# General
aws help
aws --version # Show the current AWS CLI version
aws configure # Configure your AWS Key ID, AWS Secret, default region and default output format for the AWS CLI
aws configure --profile <profile_name> # Configure using the profile name. By default, the list of profile is stored in ~/.aws.credentials (Linux and MacOS)
# EC2
## We need to specify a region to use ec2 commands. We can configure a default region with "aws configure" or set the AWS_DEFAULT_REGION environment variable before the command line
## Example: AWS_DEFAULT_REGION=us-east-1 aws ec2 describe-instances
aws ec2 describe-instances # Desribe all instances in the current region
aws ec2 describe-instances --instance-ids <instance_id_1> <instance_id_2> # Describe specific instances by their IDs
aws ec2 describe-instances --filters Name=<instance_name> # Filter and describe instances by name
aws ec2 start-instances --instance-ids <instance_id_1> <instance_id_2> # Start previously stopped instances by their IDs
aws ec2 stop-instances --instance-ids <instance_id_1> <instance_id_2> # Stop running instances by their IDs
aws ec2 terminate-instances --instance-ids <instance_id_1> <instance_id_2> # Shutdown the specific instances by their IDs
# S3
## To specify the root directory of a S3 bucket, use this syntax: s3://<bucket_name>
aws s3 ls # List S3 objects and common prefixes under a prefix or all S3 buckets
aws s3 ls s3://<bucket_name> # List objects and common prefixes under a specified bucket and prefix
aws s3 mb s3://<bucket_name> # Create a specific S3 bucket
aws s3 rb s3://<bucket_name> # Remove an empty specific S3 bucket by name
aws s3 mv <local_file_path> s3://<bucket_name>/<destination_file_path> # Move a file in local_file_path to a specific bucket in destination_file_path
## Example: aws s3 mv text.txt s3://mybucket/text.txt
aws s3 mv s3://<bucket_name_1> s3://<bucket_name_2> --recursive # Move all objects from bucket_name_1 to bucket_name_2
aws s3 sync <source> <target> # Sync all contents from source to a target directory. This will copy and update all missing or outdated files or objects between source and target
## Examples: aws s3 sync . s3://mybucket
## aws s3 sync s3://bucket_1 s3://bucket_2
aws s3 sync <source> <target> --delete # Sync all contents from source to target, but this will remove all missing files and objects from the target that are not present in source

View File

@ -16,6 +16,7 @@ docker rm $(docker ps -a -q) # Remove all containers from this ma
docker images -a # Show all images on this machine
docker rmi <imagename> # Remove the specified image from this machine
docker rmi $(docker images -q) # Remove all images from this machine
docker logs <container-id> -f # Live tail a container's logs
docker login # Log in this CLI session using your Docker credentials
docker tag <image> username/repository:tag # Tag <image> for upload to registry
docker push username/repository:tag # Upload tagged image to registry

View File

@ -46,6 +46,10 @@ git stash branch my-branch stash@{1} # creates a branch from your stash
git stash drop stash@{1} # deletes the {1} stash
git stash clear # clears all the stash
git rebase -i <commit_id> # Rebase commits from a commit ID
git rebase --abort # Abort a running rebase
git rebase --continue # Continue rebasing after fixing all conflicts
git clean -f # clean untracked files permanently
git clean -f -d/git clean -fd # To remove directories permanently
git clean -f -X/git clean -fX # To remove ignored files permanently

26
tools/pm2.sh Normal file
View File

@ -0,0 +1,26 @@
##############################################################################
# PM2
##############################################################################
# Start commands
pm2 start <file> # Start an application
pm2 start <app_id> # Start a stopped application
pm2 start <app_id> ecosystem.config.js # Start an app with the configuration in ecosystem file
pm2 start <file> -i <number_of_instances> # Start an app in cluster mode with n duplicated instances
# Management commands
pm2 ls # List all processes
pm2 save # Save process list to respawn at reboot
pm2 restart <app_id> # Restart an app by ID
pm2 reload <app_id> # Reload an app by ID
pm2 stop <app_id> # Stop an app by ID
pm2 stop all # Stop all running instances
pm2 delete <app_id> # Delete an app by ID
pm2 delete all # Delete all instances
pm2 ecosystem # Generate a sample ecosystem.config.js file
# Monitoring
pm2 show <app_id> # Show a specific app's description
pm2 logs <app_id> --lines=<number_of_lines> # Show the last n lines of logs of an app
pm2 env <app_id> # Show all environment variables of an app
pm2 monit # Monitor all applications' logs, metrics,etc

View File

@ -13,3 +13,5 @@ scp user@remote_host:remote_file local_file # download: remote -> local
scp local_file user@remote_host:remote_file # upload: local -> remote
sudo -s # Log as root
cat /proc/<process_id>/maps # Show the current virtual memory usage of a Linux process