No description
- JavaScript 81.2%
- Shell 16.1%
- Dockerfile 2.1%
- HTML 0.6%
| lab1 | ||
| lab2 | ||
| lab3 | ||
| lab4 | ||
| lab5 | ||
| lab6 | ||
| lab7 | ||
| lab8 | ||
| lab9 | ||
| lab10 | ||
| lab11 | ||
| lab12 | ||
| .gitignore | ||
| README.md | ||
Enterprise Architecture Design
M.Sc. 2026
General Information
Lecturer: Enda Lee
Contact/ Email: enda.lee@tudublin.ie
Labs
Week 1
📄 1.1 - Set up a virtualized Linux server environment
📄 1.2 - Install the Docker engine and deploy an application
📄 1.3 - Container Management
📄 1.4 - Advanced Linux Tools
Week 2
📄 Lab 2 - Overview
📄 Lab 2.1 - Monolithic web app
📄 Lab 2.2 - Microservice version of the app
📄 Lab 2.3 - Latency Testing and Comparison
Week 3
Read and try for this lab: VS Code Remote Development using SSH
📄 Lab 3.1 - Overview
📄 Lab 3.2 - K3 Pods
📄 Lab 3.3 - Deployment
📄 Lab 3.4 - Operations and Configuration
📄 Lab 3.5 - Persistence (PVC)
📄 Lab 3.6 - Microservices
📄 Lab 3.7 - Testing & Troubleshooting
Week 4
📄 Lab 4 - Overview
📄 Lab 4.1 - Nanoservices on Docker Compose
📄 Lab 4.2 - Deploy the Nanoservices App to K3s
📄 Lab 4.3 - Compare Compose vs Kubernetes
Week 5
📄 Lab 5.0 - Overview
📄 Lab 5.1 - KEDA scale-to-zero
📄 Lab 5.2 - Apply scale-to-zero to the Lab 4 checkout
📄 Lab 5.3 - Tracing basics (Request IDs) + Persistence
Week 6
📄 Lab 6.1 - Concepts/ Overview
📄 Lab 6.2 - RabbitMQ
📄 Lab 6.3 -Kafka
📄 Lab Resources - example apps and Manifests
Week 7
📄 Lab 7a - Zero Trust request path and Kubernetes identity hardening
📄 Lab 7b - Shift-left security pipeline
📄 Lab 7c - Staging DAST + runtime detection + incident drill
Week 8 - 12
📄 Lab 8 - IAM with Keycloak, OIDC, JWT Validation, and Workload Identity
📄 Lab 9 - Build a secure gateway entry path with Ingress, TLS, and IAM
📄 Lab 10 - Build edge APIs with REST, BFF, GraphQL, and RPC-style patterns
📄Lab 11 - Build traffic control and resilience with rate limiting, timeouts, retries, circuit breakers, and observability
📄 Lab 12: Build east-west controls, egress policy, mTLS concepts, and a simple service-mesh example
Reading
Linux Journey (Highly Recommended)
- Why: The absolute best starting point. It breaks Linux down into small, bite-sized modules. It covers permissions, processes, and text processing visually.
- Focus: Complete the "Command Line" and "Text" sections for this module.
OverTheWire: Bandit Wargame (Gamified)
- Why: A game where you learn Linux commands to "hack" into the next level. Level 1 requires SSH, Level 2 requires file reading, etc.
- Focus: Levels 0–10 are perfect for practicing SSH,
grep,find, and file permissions.
The Linux Command Line (Free Book)
- Why: The standard textbook for Linux. The author, William Shotts, offers the PDF for free.
- Focus: Chapter 6 (Redirection) and Chapter 19 (Regular Expressions/Grep).
- Why: A comprehensive, plain-English tutorial created by a developer, not a corporation. It covers everything from "Hello World" to deploying on AWS.
- Focus: Sections 1 through 4 (Basics to Docker Compose).
- Why: An official browser-based sandbox. If your local VM breaks or you don't have enough RAM, you can spin up a Docker instance inside your web browser for free (requires Docker Hub account).
- Focus: Use this to practice multi-container networking without breaking your own laptop.
Print these out or keep them bookmarked during Labs.
- Docker CLI Cheatsheet (Official PDF)
- Linux Command Line Cheatsheet (Cheatography)
- Crontab.guru: Essential for understanding Linux scheduled tasks (cron jobs).