Aller au contenu

Cheatsheet

3 niveaux de fréquence :

  • quotidien — tu tapes ça tous les jours, apprends-les par coeur. Si tu connais celles-là, tu t’en sors.
  • occasionnel — utile régulièrement, tu reviendras les chercher ici quand il faudra.
  • rarement — tu en auras besoin une ou deux fois, surtout pour le setup ou le nettoyage.

Les mots entre <chevrons> sont des placeholders — remplace-les par ta propre valeur. Exemple : git checkout -b <branche>git checkout -b feature/login

CommandeDescriptionFréquence
git statusVoir l’étatquotidien
git add .Tout ajouter au stagingquotidien
git commit -m "<message>"Committerquotidien
git pushPousser sur le remotequotidien
git pullRécupérer depuis le remotequotidien
git checkout -b <branche>Créer et aller sur une branchequotidien
git log --onelineHistorique compactoccasionnel
git merge <branche>Fusionner une brancheoccasionnel
git initInitialiser un reporarement
git branch <branche>Créer une branche (sans y aller)rarement
CommandeDescriptionFréquence
ls -laLister tout (fichiers cachés inclus)quotidien
cd <chemin>Se déplacerquotidien
cat <fichier>Lire un fichierquotidien
mkdir -p <chemin>Créer des dossiers récursifsquotidien
grep -r "<texte>" <dossier>/Chercher du textequotidien
sudo apt update && sudo apt install -y <paquet>Installer un paquet (ex: curl, git)quotidien
pwdAfficher le répertoire courantoccasionnel
nano <fichier>Éditer un fichier dans le terminaloccasionnel
rm -r <dossier>Supprimer (récursif)occasionnel
cp -r <source> <destination>Copier (récursif)occasionnel
mv <source> <destination>Déplacer / renommeroccasionnel
chmod 755 <fichier>Changer les permissionsoccasionnel
export <NOM_VARIABLE>="<valeur>"Définir une variable d’environnementoccasionnel
ps auxLister les processusoccasionnel
kill <PID>Tuer un processus (PID = numéro affiché par ps aux)occasionnel
find . -name "*.py"Chercher des fichiersrarement
chown <user>:<group> <fichier>Changer le propriétairerarement
systemctl start/stop/status <service>Gérer un service (ex: nginx, docker)rarement
whoamiAfficher l’utilisateur courantrarement
printenvLister les variables d’environnementrarement
journalctl -u <service>Voir les logs d’un servicerarement
CommandeDescriptionFréquence
curl <URL>Requête HTTP (ex: curl http://localhost:8000/api/tasks)quotidien
ss -tlnpPorts ouvertsoccasionnel
ping <hôte>Tester la connectivité (ex: ping google.com)occasionnel
curl -I <URL>Voir les headersoccasionnel
dig +short <domaine>Résoudre un DNS (ex: dig +short google.com)rarement
wget <URL>Télécharger un fichierrarement
hostname -IVoir son IP privéerarement
curl ifconfig.meVoir son IP publiquerarement
traceroute <hôte>Chemin réseaurarement
sudo ufw allow <port>Ouvrir un port (ex: sudo ufw allow 8000)rarement
sudo ufw enableActiver le firewallrarement
sudo ufw statusVoir les règlesrarement
MéthodeCe que ça faitExemple
GETLire une ressourcecurl http://localhost:8000/api/tasks
POSTCréer une ressourcecurl -X POST -H "Content-Type: application/json" -d '{"title":"..."}' http://localhost:8000/api/tasks
PATCHModifier une donnée existantecurl -X PATCH http://localhost:8000/api/tasks/1
PUTModifier une donnée existante(non utilisé dans ce projet)
DELETESupprimercurl -X DELETE http://localhost:8000/api/tasks/1

PATCH vs PUT : pour faire simple, les deux servent à modifier une donnée qui existe déjà. La différence technique : PATCH modifie seulement les champs envoyés, PUT remplace la ressource entièrement. En pratique, beaucoup d’APIs utilisent l’un ou l’autre sans distinction. Dans ce cursus on utilise PATCH — si tu vois PUT ailleurs, dis-toi que c’est la même idée.

CommandeDescriptionFréquence
docker compose up -d --buildLancer avec Composequotidien
docker compose downTout arrêterquotidien
docker compose psVoir l’état des servicesquotidien
docker compose logs -fLogs de tous les servicesquotidien
docker psContainers en coursquotidien
docker logs -f <container>Suivre les logs d’un containerquotidien
docker exec -it <container> bashEntrer dans un containeroccasionnel
docker build -t <nom>:<tag> .Construire une image (ex: docker build -t mon-app:1.0 .)occasionnel
docker stop <container>Arrêter un containeroccasionnel
docker rm <container>Supprimer le containeroccasionnel
docker ps -aTous les containers (même arrêtés)occasionnel
docker run -d -p <port_machine>:<port_container> --name <nom> <image>Lancer un container sans Composerarement
docker rmi <image>Supprimer l’imagerarement
docker pull <image>Télécharger une image (ex: docker pull postgres:16)rarement
docker imagesLister les images localesrarement
docker system dfVoir l’espace utilisé par Dockerrarement
docker system prune -aNettoyer images/containers inutilisésrarement
CommandeDescriptionFréquence
bun installInstaller les dépendancesquotidien
bun run devLancer le serveur de devquotidien
bun run buildCompiler pour la productionoccasionnel
bunx oxlint .Lancer le linteroccasionnel

Bun remplace npm + Node.js. Les commandes équivalentes npm : npm install, npm run dev, npx oxlint .

CommandeDescriptionFréquence
uv syncInstaller les dépendancesquotidien
uv run uvicorn main:app --reloadLancer le serveur backendquotidien
uv run pytestLancer les testsquotidien
uv run ruff check .Lancer le linteroccasionnel
uv add <paquet>Ajouter une dépendance (ex: uv add fastapi)rarement

uv remplace pip + venv. Les commandes équivalentes : pip install -r requirements.txt, python -m pytest

# Structure minimale
name: CI
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- run: echo "Hello CI"
ConceptSyntaxe
Secret${{ secrets.<NOM_DU_SECRET> }}
Dépendance entre jobsneeds: <nom_du_job>
Conditionif: github.ref == 'refs/heads/main'
CommandeDescriptionFréquence
aws ec2 describe-instancesLister les instancesquotidien
aws ec2 stop-instances --instance-ids <ID>Arrêter (ex: --instance-ids i-0abc123)quotidien
aws ec2 start-instances --instance-ids <ID>Démarrerquotidien
aws s3 cp <fichier> s3://<bucket>/Uploadoccasionnel
aws s3 ls s3://<bucket>/Lister le contenu d’un bucketoccasionnel
aws ec2 terminate-instances --instance-ids <ID>Supprimer définitivementoccasionnel
aws configureConfigurer les credentialsrarement
aws s3 mb s3://<bucket>Créer un bucketrarement
aws rds describe-db-instancesLister les bases RDSrarement
aws rds delete-db-instance --db-instance-identifier <ID> --skip-final-snapshotSupprimer une base RDSrarement
aws lambda list-functionsLister les fonctions Lambdararement
aws lambda invoke --function-name <NOM> output.jsonInvoquer une Lambdararement
aws lambda delete-function --function-name <NOM>Supprimer une Lambdararement
CommandeDescriptionFréquence
terraform planPrévisualiserquotidien
terraform applyAppliquerquotidien
terraform initInitialiser (télécharger providers)occasionnel
terraform destroyTout supprimeroccasionnel
terraform fmtFormater le codeoccasionnel
terraform validateVérifier la syntaxerarement
terraform state listVoir les ressources géréesrarement
CommandeDescriptionFréquence
ansible-playbook -i <inventory> <playbook>.ymlLancer un playbookquotidien
ansible -i <inventory> <hosts> -m pingTester la connexionoccasionnel
ansible-playbook -i <inventory> <playbook>.yml --checkDry runoccasionnel
ansible-vault encrypt <fichier>Chiffrer un fichierrarement
CommandeDescriptionFréquence
kubectl get podsLister les podsquotidien
kubectl get servicesLister les servicesquotidien
kubectl logs <pod>Voir les logsquotidien
kubectl apply -f <fichier>.ymlAppliquer une configquotidien
kubectl describe pod <pod>Détails d’un podoccasionnel
kubectl get deploymentsLister les deploymentsoccasionnel
kubectl delete -f <fichier>.ymlSupprimeroccasionnel
kubectl scale deployment <nom> --replicas=<N>Scaler (ex: --replicas=3)occasionnel
kubectl rollout status deployment/<nom>Suivre un deploymentrarement
kubectl get namespacesLister les namespacesrarement
kubectl set image deployment/<nom> <container>=<image>:<tag>Mettre à jour l’imagerarement
minikube startLancer le cluster localrarement
minikube stopArrêter le cluster localrarement
minikube image load <image>Charger une image locale dans minikuberarement
minikube service <nom> --urlObtenir l’URL d’un servicerarement
Commande / URLDescriptionFréquence
http://localhost:9090Prometheus UIquotidien
http://localhost:3001Grafana UIquotidien
curl http://localhost:8000/metricsVoir les métriques brutesoccasionnel
rate(<métrique>[1m])Taux par seconde (PromQL)rarement
histogram_quantile(0.95, ...)Percentile 95 (PromQL)rarement
docker compose up -d (avec prometheus.yml)Lancer Prometheus + Grafanararement