Description
Define linux-sysmonitor as a Docker Compose service to simplify local deployment and orchestration. Configure environment variables, persistent storage for logs, and a restart policy. Optionally, add a second service to practice inter-container networking.
Tasks
Acceptance Criteria
docker compose up starts all configured services successfully.
- The
sysmonitor service runs without errors.
- Log files persist across container restarts using the named volume.
- Environment variables are correctly injected into the container.
- (Stretch Goal) Services can communicate using the default Docker Compose network.
Commit Message
feat: add docker-compose for local orchestration (closes #15)
Why This Matters
Docker Compose is the standard tool for running multi-container applications during development. It introduces concepts that closely align with Kubernetes, including:
- Service definitions
- Named volumes
- Environment variable injection
- Container networking
- Restart policies
Completing this ticket prepares you for Kubernetes fundamentals, where these concepts evolve into Pods, PersistentVolumeClaims (PVCs), ConfigMaps, and Services.
Interview Tip: Be prepared to explain why Docker Compose is ideal for local development but not sufficient for production. Common limitations include single-host deployment, limited scalability, and the absence of built-in orchestration features such as automatic scheduling, self-healing, and rolling updates.
Description
Define
linux-sysmonitoras a Docker Compose service to simplify local deployment and orchestration. Configure environment variables, persistent storage for logs, and a restart policy. Optionally, add a second service to practice inter-container networking.Tasks
docker-compose.ymlfile in the project root.sysmonitorservice using the localDockerfile./app/logs).LOG_LEVEL,CHECK_INTERVAL).nginx) and configure the health-check script to communicate with it using the Docker Compose network.Acceptance Criteria
docker compose upstarts all configured services successfully.sysmonitorservice runs without errors.Commit Message
Why This Matters
Docker Compose is the standard tool for running multi-container applications during development. It introduces concepts that closely align with Kubernetes, including:
Completing this ticket prepares you for Kubernetes fundamentals, where these concepts evolve into Pods, PersistentVolumeClaims (PVCs), ConfigMaps, and Services.