Instead of each developer setting up their own environment, we have created a pre-configured, distributable Docker image that contains everything needed for Finagy development.
- Node.js 18 with all dependencies
- Git configured and ready
- Development tools (Prettier, ESLint, Markdown All in One)
- Custom
.bashrcwith your personalizations - Workspace at
/finagy - All extensions pre-installed
# Team members pull the image
docker pull dusansymphony/finagy_dev:latest
# Run the development environment
docker run -it --name finagy-dev dusansymphony/finagy_dev:latest bash- Zero setup time - just pull and run
- Identical environments across the team
- No "works on my machine" issues
- Pre-configured tools ready to use
- Standardized development environment
- Easy onboarding for new team members
- Version controlled development setup
- Consistent tooling across all developers
- Single source of truth for dev environment
- Easy updates - just rebuild and push
- Rollback capability to previous versions
- Environment as code approach
# Start your development environment
docker run -it --name finagy-dev finagy_dev:latest bash
# Inside container: develop, test, iterate
# Set up API keys, work on code, etc.
exit # Exit when done
# Commit your progress
./docker-tag.sh dev finagy-dev# When you need to update the base environment
# 1. Make changes to devcontainer.json
# 2. Rebuild the image
# 3. Tag as new version: finagy_dev:v1.1
# 4. Push to registry
# 5. Team pulls the updated imagedocker tag finagy_dev:latest dusansymphony/finagy_dev:latest
docker push dusansymphony/finagy_dev:latestdocker tag finagy_dev:latest ghcr.io/yourusername/finagy_dev:latest
docker push ghcr.io/yourusername/finagy_dev:latestdocker tag finagy_dev:latest your-registry.com/finagy_dev:latest
docker push your-registry.com/finagy_dev:latestfinagy_dev:latest- Latest stable development environmentfinagy_dev:v1.0- Specific version with known configurationfinagy_dev:node18- Environment with specific Node.js versionfinagy_dev:experimental- Testing new tools/versions
# Major version (breaking changes)
finagy_dev:v2.0
# Minor version (new tools, updates)
finagy_dev:v1.1
# Patch version (bug fixes)
finagy_dev:v1.0.1
# Feature branches
finagy_dev:feature-typescript
finagy_dev:feature-python- Install Docker
- Pull the image:
docker pull dusansymphony/finagy_dev:latest - Start developing:
docker run -it --name finagy-dev dusansymphony/finagy_dev:latest bash - That's it! No more setup, configuration, or tool installation
- Pull latest:
docker pull dusansymphony/finagy_dev:latest - Remove old container:
docker rm finagy-dev - Start fresh:
docker run -it --name finagy-dev dusansymphony/finagy_dev:latest bash
# Build for different architectures
docker buildx build --platform linux/amd64,linux/arm64 -t finagy_dev:latest .# Pass environment variables
docker run -it --name finagy-dev \
-e OPENAI_API_KEY="your-key" \
-e FINANCIAL_DATASETS_API_KEY="your-key" \
finagy_dev:latest bash# Mount your local code
docker run -it --name finagy-dev \
-v $(pwd):/workspace \
finagy_dev:latest bashYou've created a "Development Environment as a Service" where:
- New developers can start coding in minutes
- Consistent environments across all team members
- Easy maintenance and updates
- Version controlled development setup
- Professional approach to development environment management
This is the future of development environment management! 🚀