# DevOps Challenge: Microservice with Update Automation The DevOps Challenge consists of two parts: 1. (Deployment)[#deployment]: Installation of an application with automated updates 2. (Concept)[#concept]: Strategy for backup, redundancy, monitoring, and logging The scripts, data, concepts, etc., created for these tasks should be stored in a Git repository within the Gitea installation. Note: The use of AI tools such as ChatGPT or GitHub Copilot is explicitly permitted. ## Deployment ### Installation Your team has decided to use the DevOps platform Gitea and wants to run its own instance. Perform the deployment on a host system (cloud subscription, VPS, or your own laptop) that is accessible from the internet by your interviewer, while adhering to the following requirements: - Choice of installation source: source code, package manager, or Docker - Installation must be automated and reproducible (free choice of configuration management system) - Use of a reverse proxy and SSL (self-signed is sufficient) - UI must be accessible only via the proxy - Setup and integration of a database (PostgreSQL, MariaDB, or MySQL) ### Update Automation Once Gitea is successfully set up, configure automation for the update process using a tool of your choice. ## Concept For Backup, Redundancy, Monitoring, and Logging develop and document your concept regarding the following topics that will be discussed during the interview: - Backup - Centralized logging of components - Monitoring of key functions - Fail-safe operation of the instance ### Optional Creation of a proof-of-concept for one or more aspects of your concept (backup, monitoring, logging, redundancy)