This project uses Docker + Docker Compose to run a full-stack app with a React frontend and a Flask backend.
- Click the green "Use this template" button at the top of the page
- Create your own repository based on this template
After cloning your repository into your machine, run:
docker compose up --buildOpen your browser and check:
- Frontend: http://localhost:3000
- Backend: http://localhost:5000/api/hello
✅ Both should be running fine.
⚠️ Disclaimer (Please read)
This project includes a GitHub Actions workflow set to manual-only (workflow_dispatch).
No automated workflows will run during cloning, pushing, or using this template — unless a user explicitly chooses to run them.
If you click "Run workflow" or manually enable automatic workflows
(e.g., by renaming .github/workflows/docker-composer-autobuild.txt to .yml),
you are doing so at your own discretion and accept full responsibility for any usage, billing, or side effects.
This template is provided as-is. I maintain versioning and structure, but I am not responsible for:
- GitHub Actions billing
- Workflow behavior (e.g., broken Docker builds)
- Security or compliance of any changes made after using this template
⚙️ What the Manual GitHub Action Does (By opening this, you agree to the disclaimer above)
When you click “Run workflow” in the Actions tab, the workflow:
- Checks out the current branch
- Sets up Docker with BuildKit support
- Runs
docker compose build
→ This builds the frontend and backend images using theDockerfileanddocker-compose.yml
✅ No containers are run
❌ No tests or deployments
🔒 Only builds — safe for checking Docker config
⚠️ Note: Running this workflow will consume GitHub Actions minutes. Please be mindful of usage if you're on a free plan without GitHub Education or Pro benefits. Refer to the disclaimer above for more details on usage, responsibility, and billing.
⚙️ What the Automatic GitHub Action Would Do (By opening this, you agree to the disclaimer above if re-enabled)
If you rename .github/workflows/docker-composer-autobuild.txt to .yml,
this workflow will be automatically triggered on:
- ✅ Any
pushto any branch - ✅ Any pull request targeting the
mainbranch (excluding.mdor documentation-only changes)
Automatically runs on code-related changes (excluding markdown and docs):
- Checks out the current branch
- Sets up Docker with BuildKit support
- Runs
docker compose build
→ This builds both the frontend and backend images using theDockerfileanddocker-compose.yml
- This workflow will run every time code is pushed or a pull request is opened
- If the Docker build fails (e.g., due to code errors or misconfigurations), the workflow will fail
- This consumes GitHub Actions minutes, even if the push is small
⚠️ Enable this only if you are confident in your Docker setup
and accept the billing and runtime implications of automated workflows.📌 Refer to the disclaimer above for full details regarding usage responsibility and billing.
You can now edit your code in your editor — Docker will reflect the changes automatically via volume mounting.
Always rebuild after pulling code to ensure updates (especially dependencies) are applied:
docker compose up --buildIf you’ve been switching branches or running lots of containers/images:
docker system prune -a --volumes -f
⚠️ This removes all unused containers, images, volumes, and networks. Use with care.
This project template is created and maintained by Kelocker.
Original repository: hackathon-template
If you find this useful, feel free to ⭐ the repo or mention it in your own project!