Learning journal + technical portfolio documenting my progression through modern DevOps practices.
This repository is associated to my DevOps Notion Website. It contains exercises, scripts, configurations and projects completed during the TWN DevOps Bootcamp of Nana Janashia and personal explorations through DevOps environment.
I started in December 2025, dedicating 30-40 hours/week - going well beyond the announced 15-20h - testing, experimenting, and deepening my understanding of each concept and tool.
💡 My goal is to become a real operational Cloud & DevOps Engineer
and as said Enstein : "The more I learn, the more I realize how much I don't know"
I build, I run, so if you're looking for a persevering candidate -> Please, let's connect.
| Topic | Key Concepts | What is in the repository |
|---|---|---|
| VirtualBox | Extension Pack clean install version checks |
|
| Linux Basics | OS info package managers Vim users/groups permissions SSH |
script_install_java.sh — Install Java + version checkps_user.sh — List & sort user processes by CPU/meminstall_server_js.sh — Full Node.js app deployment (env vars, background run, log dir, service user) |
| Database Types | Relational vs NoSQL organization patterns |
Schema of Database's types |
| Bash Scripting | Variables, conditions loops, functions, I/O |
scripts with conditions, loops, functions with local scope and return codes, I/O: args, user input, file/CSV parsing, process substitution, file check |
| Git Version Control | Commands, branches, conflicts, stash, reset/revert | 10 scripted exercises: clone, .gitignore, feature/bugfix branches, merge requests, conflict resolution, revert & reset commits, branch cleanup |
| Build Tools & Package Managers | Artifacts, Maven/Gradle, Webpack, Docker basics | 6 exercises on a Gradle Java app (fix test, build, run jar, add params) + React/Node.js full-stack example with Webpack and Dockerfile |
| Topic | Key Concepts | What's in the repo |
|---|---|---|
| Cloud & IaaS | Cloud service types, DigitalOcean Droplet, firewall, SSH config | 6 exercises: package Node.js app (npm pack), provision DigitalOcean Droplet, install Node/npm, deploy artifact via SSH, run in background, open firewall port |
| Nexus Repository Manager | Installation, repo types, artifact publishing (Maven/Gradle), API, automation | 9 exercises: install Nexus, create npm & Maven repos, manage roles/users, publish Node.js tar & Gradle jar, query REST API, automate artifact fetch & deploy on DigitalOcean |
| Docker Containers | Images, volumes, networks, Dockerfile, Docker Compose, best practices, multi-stage builds | 8 exercises: MySQL + phpMyAdmin via Docker network & secrets, docker-compose with volumes & healthcheck, Dockerfile for Java app, push to Nexus Docker repo, full stack deployed on DigitalOcean |
| Nginx | Reverse proxy, web server, Kubernetes Ingress Controller | Submodule: Express app × 3 containers behind NGINX (reverse proxy, load balancer, TLS termination, gzip, cache) |
| Topic | Key Concepts | What's in the repo |
|---|---|---|
| Jenkins CI/CD | Freestyle jobs Pipelines Jenkinsfiles Multibranch Shared libraries Webhooks Auto-Versioning |
java-maven-app/ — freestyle → Jenkinsfile + script.groovyjava-dockerhub-pipeline/ — pipeline CI to Docker Hubjava-dockerhub-shared/ — global shared libraryjava-dockerhub-limited-shared/ — project-scoped shared library (submodule, DockerHub/ECR, EC2 SSH/SSM) auto-versioning-pipeline/ — Maven patch auto-increment + SCM skip Jenkins-exercises/ — Node.js full pipeline: Jest, Docker Hub push, Git commit-back jenkins-docker-platform*.sh — auto-install Jenkins+Docker (Ubuntu, AL2023) + scalable agents platform (docker/maven/nodejs/aws) |
| AWS Services | IAM, VPC, EC2, ECR, S3, CLI — with full CI/CD projects via SSH and SSM | react-nodejs-example/ — React + Node.js API (Webpack) + Dockerfile js-app-db/ — Node.js + MongoDB + docker-compose AWS-exercises/ : Node.js app with Jenkinsfile and docker-compose jma-ssh-dockerhub-ec2/ — Java Maven app -> Git -> Jenkins -> Docker Hub -> EC2 via SSH jma-ssm-ecr-ec2/ — Java Maven app -> Git -> Jenkins -> ECR -> EC2 via SSM (IAM policies) + Docker Compose SSH-vs-SSM.drawio — architecture comparison |
| Kubernetes Orchestration | Core components architecture Minikube/kubectl YAML manifests Namespaces Services Ingress + TLS Gateway API Volumes ConfigMap/Secret |
nginx-deployment.yaml / nginx-service.yaml — basic Deployment + Service MongoDB-Express-Deployment/ — MongoDB + Mongo Express, Secret + ConfigMap, NodePort access Test_Services/nginx-deployment.yaml — Pod replication across nodes Test_Services/nginx-dpl-svc.NodePort.yaml — NodePort service demo Test_Services/nginx-dpl-svc.LoadBalancer.yaml — LoadBalancer service (minikube tunnel) Test_Services/nginx-prometheus-deploy.yaml — multi-port named service (nginx + exporter) Test_Services/mongodb-replicaset.yaml — Headless service for StatefulSet Test_Services/nginx-ingress.yaml — Ingress routing Test_Ingress/ — dashboard Ingress + self-signed TLS Test_ConfigMap_Volume/Mosquitto_deployment/ — MQTT broker, ConfigMap + Secret mounted as volumes Test_ConfigMap_Volume/nginx_tls_to_ingress/ — TLS termination at Ingress Test_ConfigMap_Volume/nginx_tls_to_pods/ — end-to-end TLS re-encryption to Pods 11-Kubernetes_Checklist.pdf / kubectl_Quick_Reference_Kubernetes.pdf — reference docs |
| Kubernetes on AWS | EKS managed clusters |
| Topic | Key Concepts | What's in the repo |
|---|
- Terraform — Infrastructure as Code
- Python Automation Scripts
- Ansible — Automation Platform
- Prometheus — Monitoring
- 📝 Full Notes Website: Notes on my DevOps journey
- 🎓 Bootcamp: TechWorld with Nana — DevOps Bootcamp
- 🗺️ Roadmap: DevOps Roadmap
- 💼 LinkedIn: Cédric Tonquèze