diff --git a/sk1/docs/documentation.pdf b/sk1/docs/documentation.pdf index 21c8d17..6a236e2 100644 Binary files a/sk1/docs/documentation.pdf and b/sk1/docs/documentation.pdf differ diff --git a/sk1/docs/documentation.tex b/sk1/docs/documentation.tex index 02909a6..da7b099 100644 --- a/sk1/docs/documentation.tex +++ b/sk1/docs/documentation.tex @@ -333,29 +333,4 @@ Hostinger & KVM 1 (4 GB) & \$5.99 \\ All content reviewed, tested, and adapted. Student understands all components. -% ============================================================= -\section{Exam Defense Preparation} -% ============================================================= - -\textbf{Q: How does HTTPS work?}\\ -A: Caddy uses the ACME protocol to automatically get a free Let's Encrypt TLS certificate for the Azure DNS hostname. It renews every 90 days. - -\textbf{Q: What if a container crashes?}\\ -A: \texttt{restart: always} in docker-compose.yaml. Docker auto-restarts failed containers. Docker starts on boot via systemd. - -\textbf{Q: How are secrets managed?}\\ -A: \texttt{.env} file (gitignored). Docker Compose injects vars into containers. \texttt{env.example} has template without values. - -\textbf{Q: How do you back up the database?}\\ -A: \texttt{backup-db.sh} runs \texttt{pg\_dump} via SSH inside the PostgreSQL container. SQL dump saved locally. - -\textbf{Q: Can deployment be reproduced?}\\ -A: Yes. \texttt{prepare-app.sh} creates all Azure resources from scratch via CLI. \texttt{remove-app.sh} deletes everything. No web UI needed. - -\textbf{Q: Why 5 containers?}\\ -A: Separation of concerns. Caddy handles HTTPS, Nginx serves static files, Node.js handles API logic, PostgreSQL stores data, Redis caches queries. Each can be scaled independently. - -\textbf{Q: How does caching work?}\\ -A: Redis caches \texttt{GET /api/tasks} for 30 seconds. Write operations invalidate the cache. - \end{document}