* added pgvector image to docker builds, modified push to migrate to ameliorate vector data type issue * added zod and t3-ss/env-nextjs to minimal set of dependencies for db image * added healthcheck to docker services
Sim Studio Development Container
This directory contains configuration files for Visual Studio Code Dev Containers / GitHub Codespaces. Dev containers provide a consistent, isolated development environment for this project.
Contents
devcontainer.json- The main configuration file that defines the development container settingsDockerfile- Defines the container image and development environmentdocker-compose.yml- Sets up the application and database containerspost-create.sh- Script that runs when the container is created.bashrc- Custom shell configuration with helpful aliases
Usage
Prerequisites
- Visual Studio Code
- Docker installation:
- Docker Desktop (Windows/macOS)
- Docker Engine (Linux)
- VS Code Remote - Containers extension
Getting Started
-
Open this project in Visual Studio Code
-
When prompted, click "Reopen in Container"
- Alternatively, press
F1and select "Remote-Containers: Reopen in Container"
- Alternatively, press
-
Wait for the container to build and initialize
-
The post-creation script will automatically:
- Install dependencies
- Set up environment variables
- Run database migrations
- Configure helpful aliases
-
Start the application with
sim-start(alias forbun run dev)
Development Commands
The development environment includes these helpful aliases:
sim-start- Start the development serversim-migrate- Push schema changes to the databasesim-generate- Generate new migrationssim-rebuild- Build and start the production versionpgc- Connect to the PostgreSQL databasecheck-db- List all databases
Using GitHub Codespaces
This project is also configured for GitHub Codespaces. To use it:
- Go to the GitHub repository
- Click the "Code" button
- Select the "Codespaces" tab
- Click "Create codespace on main"
This will start a new Codespace with the development environment already set up.
Customization
You can customize the development environment by:
- Modifying
devcontainer.jsonto add VS Code extensions or settings - Updating the
Dockerfileto install additional packages - Editing
docker-compose.ymlto add services or change configuration - Modifying
.bashrcto add custom aliases or configurations
Troubleshooting
If you encounter issues:
- Rebuild the container:
F1→ "Remote-Containers: Rebuild Container" - Check Docker logs for build errors
- Verify Docker Desktop is running
- Ensure all prerequisites are installed
For more information, see the VS Code Remote Development documentation.