| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- {
- "name": "Watch Finished Turbo Development",
- "dockerFile": "Dockerfile",
- "context": "..",
- // Configure tool-specific properties.
- "customizations": {
- // Configure properties specific to VS Code.
- "vscode": {
- "extensions": [
- "ms-vscode.vscode-typescript-next",
- "bradlc.vscode-tailwindcss",
- "esbenp.prettier-vscode",
- "ms-vscode.vscode-eslint",
- "ms-vscode.vscode-json",
- "ms-playwright.playwright",
- "ms-vscode.test-adapter-converter",
- "hbenl.vscode-test-explorer",
- "ms-vscode.vscode-jest",
- "ms-vscode-remote.remote-containers",
- "GitHub.copilot",
- "GitHub.copilot-chat"
- ],
- "settings": {
- "typescript.preferences.preferTypeOnlyAutoImports": true,
- "typescript.suggest.autoImports": true,
- "editor.formatOnSave": true,
- "editor.defaultFormatter": "esbenp.prettier-vscode",
- "editor.codeActionsOnSave": {
- "source.fixAll.eslint": "explicit"
- },
- "tailwindCSS.experimental.classRegex": [
- ["cva\\(([^)]*)\\)", "[\"'`]([^\"'`]*).*?[\"'`]"],
- ["cx\\(([^)]*)\\)", "(?:'|\"|`)([^']*)(?:'|\"|`)"]
- ],
- "jest.autoRun": "off",
- "playwright.reuseBrowser": true
- }
- }
- },
- // Features to add to the dev container. More info: https://containers.dev/features.
- "features": {
- "ghcr.io/devcontainers/features/github-cli:1": {},
- "ghcr.io/devcontainers/features/docker-in-docker:2": {},
- "ghcr.io/devcontainers/features/node:1": {
- "version": "20",
- "pnpmVersion": "latest"
- },
- "ghcr.io/devcontainers/features/git:1": {
- "version": "latest",
- "ppa": false
- }
- },
- // Use 'forwardPorts' to make a list of ports inside the container available locally.
- "forwardPorts": [
- 3000, // Next.js web app
- 3001, // NestJS API service
- 9229 // Node.js debugger
- ],
- // Use 'postCreateCommand' to run commands after the container is created.
- "postCreateCommand": "pnpm install",
- // Configure tool-specific properties.
- "remoteUser": "node",
- // Mount the workspace
- "workspaceMount": "source=${localWorkspaceFolder},target=/workspaces/watch-finished-turbo,type=bind,consistency=cached",
- "workspaceFolder": "/workspaces/watch-finished-turbo",
- // Environment variables
- "containerEnv": {
- "NODE_ENV": "development",
- "PNPM_HOME": "/home/node/.local/share/pnpm",
- "PATH": "/home/node/.local/share/pnpm:/home/node/.local/share/pnpm/global/5/node_modules/.bin:${PATH}"
- },
- // Security options
- "securityOpt": ["label:disable"],
- // Mounts for persistent data
- "mounts": [
- "source=${localWorkspaceFolder}/.devcontainer/.pnpm-store,target=/home/node/.local/share/pnpm,type=volume",
- "source=${localWorkspaceFolder}/data,target=/workspaces/watch-finished-turbo/data,type=bind"
- ]
- }
|