Skip to content

Create local testing container image - #85

Open
prozak wants to merge 1 commit into
masterfrom
claude/docker-local-testing-011CUfGBYGZkjazM5DmG57Fo
Open

Create local testing container image#85
prozak wants to merge 1 commit into
masterfrom
claude/docker-local-testing-011CUfGBYGZkjazM5DmG57Fo

Conversation

@prozak

@prozak prozak commented Dec 7, 2025

Copy link
Copy Markdown
Owner

No description provided.

This commit introduces a complete Docker-based development environment
that enables local testing and matches the CI environment.

Changes:
- Dockerfile.dev: Development image with Haskell 9.6.4, Cabal, Alex, and Happy
- docker-compose.yml: Easy-to-use compose configuration with user mapping
  to avoid root permission issues on created files
- .dockerignore: Excludes build artifacts and cache from Docker context
- DOCKER.md: Comprehensive Docker usage documentation
- TESTING.md: Manual testing guide with troubleshooting
- test-docker-setup.sh: Automated validation script
- README.md: Updated with Docker quick start options

Key Features:
- Runs container as current user (not root) via UID/GID mapping
- Persistent volumes for Cabal cache and build artifacts
- Files created in container are owned by you, not root
- Automated test script handles user setup correctly

Benefits:
- Consistent environment between local development and CI
- No need to install Haskell toolchain locally
- Faster onboarding for new contributors
- No root-owned files in your workspace
- Easy testing with './test-docker-setup.sh'

This provides the foundation for future CI optimization using
pre-built container images.
@prozak
prozak force-pushed the claude/docker-local-testing-011CUfGBYGZkjazM5DmG57Fo branch from be5a6ff to ee832f6 Compare December 11, 2025 03:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants