Container Store is your central hub for professional-grade development container configurations, designed to streamline your workflow and elevate your development environment. Leveraging VS Code Dev Containers, Docker, and WSL2, it provides reproducible and isolated environments for projects like SmartDev and Wisp.
Key Objectives:
- ✨ Streamlined Workflow: Achieve consistent, version-controlled dev container configurations.
- 📂 Multi-Project Management: Centrally store and manage configurations for diverse projects (e.g., SmartDev, Wisp).
- 🛠️ Modern Tooling: Utilize Alpine Linux, Zsh, Oh My Zsh, Powerlevel10k, Starship, and uv for a cutting-edge development experience.
- 🤝 VS Code and Git Integration: Seamlessly open, rebuild, and maintain containers with VS Code and Git.
container-store/
├── 📂 bit_net/ # Microsoft LLM in a 9GB image. We're inferencing on low-tier CPUs now.
│ └── 📄 Dockerfile
├── 📂 smart_dev/ # A Nvidia GPU configured data science container
│ └── 📂 .devcontainer/
│ ├── 📄 docker-compose.yml
│ ├── 📄 Dockerfile
│ ├── 📄 devcontainer.json
│ └── 📄 requirements.txt
└── 📂 wisp/ # Compact, powerful, and visually stunning Alpine-based image with zsh configs
└── 📂 .devcontainer/
├── 📄 Dockerfile
├── 📄 devcontainer.json
└── 📄 requirements.txt
- .devcontainer Folder: Encapsulates the
Dockerfile
anddevcontainer.json
files that define the container's development environment. - requirements.txt: Specifies Python package dependencies for installation within the container's virtual environment.
- Alpine Linux Base Image: 🏔️ Minimal container footprint with essential development tools.
- Custom Zsh Setup:
- Oh My Zsh with the Powerlevel10k theme. 🎨
- Plugins:
zsh-syntax-highlighting
,zsh-autosuggestions
, and more for enhanced shell functionality. 🚀
- Starship Prompt: 🌟 Fast, customizable, and minimal prompt for an informative and efficient terminal experience.
- uv Virtual Environment Management: 🐍 Automatic virtual environment creation and dependency installation from
requirements.txt
. - Nerd Fonts: 🤓 Installs the Source Code Pro Nerd Font (SauceCodePro Nerd Font) for enhanced glyph rendering in the terminal.
- OS: Windows 10/11 with WSL2 enabled. 🪟
- Tooling: docker-cli (configured for WSL2). 🐳
- IDE: Visual Studio Code with the following extensions:
- Remote - WSL 🔌
- Dev Containers 📦
- Docker 🐋
- Version Control: Git (for repository cloning and management). 🌳
-
Clone the Repository:
git clone [https://github.com/cmlpolymath/container-store.git](https://github.com/cmlpolymath/container-store.git) cd container-store/wisp
-
Open in VS Code:
- Open VS Code.
- Use the Command Palette: "Reopen in Container"
- This action will:
- Build the container from the
.devcontainer
configuration. - Create a uv virtual environment and install dependencies from
requirements.txt
(if present). - Launch Zsh with the Powerlevel10k theme and Starship prompt.
- Build the container from the
-
Container Usage:
- Your development environment is now ready for use. 🚀
- Code, dependencies, and terminal settings are all pre-configured within the container.
PowerShell (or WSL):
wsl bash -c "sudo service docker start && devcontainer up --workspace-folder /home/<your-user>/container_store/wisp && code --remote dev-container+$(wslpath -w /home/<your-user>/container_store/wisp)"
💡 Tip: Replace
<your-user>
with your actual username. Use the--build-no-cache
flag to force a complete rebuild, bypassing any cached layers.
Contributions are welcome!
- 🍴 Fork the repository.
- 🌿 Create a branch.
- ✅ Commit changes with clear and descriptive messages.
- 🚀 Open a Pull Request.
For issues or suggestions, please use the GitHub Issue Tracker.
Thank you for visiting. Please come again! 👋