dockerize-project
Dockerize Current Project (Minimal)
Goal
Analyze the current project’s files and generate a minimal, working Dockerfile and docker-compose.yml so the project can be started with docker compose up --build.
Instructions
- Inspect the current project structure and identify the primary tech stack:
- Python (pyproject.toml, uv.lock, requirements.txt, manage.py, app.py, main.py)
- Node.js (package.json)
- Other / generic
- Check whether Docker-related files already exist:
- Dockerfile
- docker-compose.yml / docker-compose.yaml
- .dockerignore
- If any exist, do NOT overwrite them. Ask the user whether to merge, regenerate with backups, or cancel.
- Infer a reasonable default entrypoint and port from the codebase.
- If the entrypoint or port is unclear, ask up to three concise clarification questions.
- Generate the following files as complete code blocks:
- Dockerfile (development-oriented, readable, non-root when reasonable)
- docker-compose.yml (no
version:field) - .dockerignore
- Prefer bind mounts for local development and explain how to change this if needed.
Constraints
- Do not use
sudo. - Do not hardcode secrets; use environment variables or an
.env/.env.dockertemplate if necessary. - Do not run Docker commands automatically.
- Keep the setup minimal and easy to modify.
Output Format
- Detection Summary
- Detected stack
- Assumed entrypoint
- Assumed port
- Generated Files
Dockerfiledocker-compose.yml.dockerignore
- How to Run
docker compose up --build- Common commands (
logs,exec)
- Notes
- What to change if the entrypoint, port, or environment differs.
Example
User: Dockerize this project for local development
Result:
- Detect Python project
- Generate Dockerfile + docker-compose.yml
- Explain how to start and customize
More from gemini960114/skills
uv-environment
Use when the user asks about uv, Python virtual environments, pyproject.toml, dependency management, or shows uv/venv output. Assume uv is already installed and prefer using the existing setup instead of reinstalling.
11fastapi-templates
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
11frontend-development
Generic frontend development skill for HTML, CSS, JavaScript, and modern frontend frameworks. Covers code patterns, best practices, debugging, and common patterns for building responsive web applications.
10frontend-requirements
Use this skill when the user asks to generate a frontend integration requirements document (frontend.md) from an existing FastAPI backend codebase. The output must be a Markdown guide for frontend engineers, including auth, endpoints, job/task workflow, status definitions, result querying, errors, and UX recommendations.
9uv-python-manager
Use this skill when the user wants to manage Python projects, virtual environments, or dependencies using uv, including creating venvs, installing packages, syncing environments, or running Python tools.
8backend-development
Generic backend development skill for building REST APIs, working with databases, authentication, and server-side logic. Covers patterns, best practices, and common patterns for backend applications.
6