Add Docker and docker-compose configurations for isolated local development#189
Add Docker and docker-compose configurations for isolated local development#189facandiav wants to merge 6 commits into
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #189 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 7 7
Lines 1341 1341
Branches 51 51
=========================================
Hits 1341 1341 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
miaucl
left a comment
There was a problem hiding this comment.
Hey, nice addition, there are some issues left concerning markdown.
I like my local venv setup, but for others it might be useful.
BTW: Why not make a .devcontainer setup directly? Not sure if you know it or use it, but this would push it a step further even :)
|
(Ignore the auto-label pipeline, it is a token issue for forked PRs...) |
|
Thanks for the comments, yes docker as an alt dev setup aside from local venv, not exclusive. Will take a look at the markdown issues and the .devcontainer setup 🙂 |
|
Updated PR with fixed md format and devcontainer setup |
miaucl
left a comment
There was a problem hiding this comment.
Small nitpick by the markdown linter, but otherwise very nice addition, thx.
Description
This PR introduces a dedicated Docker container environment for local development.
Currently, developers have to manage local Python versions (
>= 3.10or>= 3.12depending on configuration variants), set up virtual environments locally, and handle host-level dependency constraints.This configuration resolves those issues by introducing a standardized container (
python:3.12-slim), ensuringpre-commithooks and integration tests pass perfectly regardless of the host machine.Changes included
Dockerfile: Provides a stablepython:3.12-slimbase that automatically configures build dependencies.docker-compose.yml: Mounts the project root so developers get live-reloading..env.example: Provides a clear template for required Cookidoo credentials.README.md: Updated the Dev documentation chapter.How to use
Testing Strategy
pre-commit run --all-files) inside the isolated container (Result:Exit Code 0).pytest smoke_test/test_1_setup_token.py).