Skip to main content

docker-compose

Work with the Oscilla Docker Compose development environment. Use when: starting or stopping services, inspecting logs, opening a shell in a container, resetting the database, or understanding the service topology.

Source facts

Repository
tedivm/oscilla
Last source activity
April 19, 2026 at 17:28
Detected SKILL.md language
English
Stars
1
Forks
0

Install options

The review-first prompt is selected by default. You can switch to a direct command or download a local copy.

Review the source files

Read SKILL.md and any companion files shown by SkillsMP before deciding whether to install.

Showing SKILL.md

SKILL.md
Source instructions · Read-only preview
name
docker-compose
description
Work with the Oscilla Docker Compose development environment. Use when: starting or stopping services, inspecting logs, opening a shell in a container, resetting the database, or understanding the service topology.
# Docker Compose Development Environment > **context7**: If the `mcp_context7` tool is available, resolve and load the full Docker Compose documentation before modifying `compose.yaml` or using advanced CLI options: > ``` > mcp_context7_resolve-library-id: "docker compose" > mcp_context7_get-library-docs: /docker/compose > ``` The Oscilla development environment runs entirely through Docker Compose. All services are defined in `compose.yaml`. --- ## Services | Service | Role | | ---------- | -------------------------------------------- | | `gateway` | Caddy reverse proxy — routes traffic to backend/frontend | | `backend` | FastAPI application server | | `frontend` | Vite / SvelteKit dev server | | `db` | PostgreSQL database | | `redis` | Redis cache / task queue | | `mailhog` | Local SMTP sink for catching outbound emails | --- ## Essential Commands ### Start / Stop ```bash # Start all services in the background docker compose up -d # Stop all services (preserves volumes — data is retained) docker compose down # Stop all services AND remove volumes (full reset — destroys all data) docker compose down -v # Restart all services without destroying containers or volumes docker compose restart # Restart a single service docker compose restart backend ``` ### Logs ```bash # View recent logs from all services docker compose logs # Follow (tail) logs from all services in real-time docker compose logs -f # Follow logs from a specific service docker compose logs -f backend docker compose logs -f frontend docker compose logs -f db ``` ### Status and Inspection ```bash # List running services and their status docker compose ps # Open a bash shell inside a running service docker compose exec backend bash docker compose exec db bash docker compose exec frontend sh ``` --- ## Common Workflows ### Start a fresh development environment ```bash docker compose up -d docker compose logs -f # watch until all services are healthy ``` ### Full reset (wipe all data and restart) ```bash docker compose down -v docker compose up -d ``` ### Debug a service startup failure ```bash docker compose logs backend --tail=50 # or follow real-time: docker compose logs -f backend ``` ### Run a one-off command inside a service ```bash docker compose exec backend bash # then run commands inside the container ``` ### Apply database migrations inside the container ```bash docker compose exec backend uv run alembic upgrade head ``` --- ## Notes - The gateway service (`Caddy`) handles TLS termination and routing. Its config lives in `docker/gateway/Caddyfile`. - Frontend container config lives in `docker/frontend/Dockerfile`. - All Docker-specific files (Dockerfiles, gateway config) live in the `docker/` folder. - The developer `.env` file is loaded automatically by Compose — make sure it's populated before starting. --- ## Further Reading - [docs/dev/docker.md](../../docs/dev/docker.md) — Full Docker developer guide covering service topology, volume management, hot-reload behavior, and multi-service debugging. - [docs/hosting/deployment.md](../../docs/hosting/deployment.md) — Production deployment guide (separate from the dev Compose stack). - [Docker Compose Docs](https://docs.docker.com/compose/)
View on GitHub