✨ feat: add devcontainer

This commit is contained in:
2024-12-04 16:54:24 +00:00
parent fe2789a215
commit 572c994075
4 changed files with 162 additions and 0 deletions
+116
View File
@@ -0,0 +1,116 @@
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
// README at: https://github.com/devcontainers/templates/tree/main/src/docker-existing-docker-compose
{
"name": "m-tartari.github.io",
// Update the 'dockerComposeFile' list if you have more compose files or use different names.
// The .devcontainer/docker-compose.yml file contains any overrides you need/want to make.
"dockerComposeFile": [
"docker-compose.yml"
],
// The 'service' property is the name of the service for the container that VS Code should
// use. Update this value and .devcontainer/docker-compose.yml to the real service name.
"service": "devcontainer",
// The optional 'workspaceFolder' property is the path VS Code should open by default when
// connected. This is typically a file mount in .devcontainer/docker-compose.yml
"workspaceFolder": "/workspaces/${localWorkspaceFolderBasename}",
// Features to add to the dev container. More info: https://containers.dev/features.
"features": {
"ghcr.io/devcontainers/features/docker-outside-of-docker:1": {}
},
// Use 'forwardPorts' to make a list of ports inside the container available locally.
// "forwardPorts": [],
// Uncomment the next line if you want start specific services in your Docker Compose config.
// "runServices": [],
// Uncomment the next line if you want to keep your containers running after VS Code shuts down.
// "shutdownAction": "none",
// Uncomment the next line to run commands after the container is created.
"postCreateCommand": "bash .devcontainer/post_create.sh",
"postStartCommand": "npm ci",
// Configure tool-specific properties.
"customizations": {
"vscode": {
"settings": {
// Workbench
"workbench.iconTheme": "vscode-icons",
// Files
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
"files.exclude": {
"**/*.pyc": true,
"**/.git": false
},
// Editor & Linting
"prettier.printWidth": 150,
"editor.suggestSelection": "first",
"editor.defaultFormatter": "esbenp.prettier-vscode",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
"editor.detectIndentation": true,
"editor.insertSpaces": true,
"editor.tabSize": 2,
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.formatOnType": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": "explicit"
},
"editor.tokenColorCustomizations": {
"textMateRules": [
{
"scope": [
"comment"
],
"settings": {
"fontStyle": "italic"
}
}
]
},
// git
"git.autofetch": true,
"git.confirmSync": false,
"git.enableSmartCommit": true,
"git-graph.dialog.rebase.ignoreDate": false,
"diffEditor.ignoreTrimWhitespace": false,
"diffEditor.wordWrap": "off",
// Javascript
"javascript.updateImportsOnFileMove.enabled": "always",
"typescript.preferences.importModuleSpecifier": "non-relative",
"typescript.updateImportsOnFileMove.enabled": "always",
"typescript.suggest.paths": true,
// JSON
"[json,jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features",
"json.format.enable": true
},
// Testing
"vitest.enable": true
},
"extensions": [
"adam-bender.commit-message-editor",
"christian-kohler.path-intellisense",
"codezombiech.gitignore",
"davidanson.vscode-markdownlint",
"dbaeumer.vscode-eslint",
"esbenp.prettier-vscode",
"firefox-devtools.vscode-firefox-debug",
"formulahendry.auto-close-tag",
"formulahendry.auto-rename-tag",
"github.copilot",
"github.copilot-chat",
"gruntfuggly.todo-tree",
"ibm.output-colorizer",
"mhutchie.git-graph",
"ms-azuretools.vscode-docker",
"naumovs.color-highlight",
"streetsidesoftware.code-spell-checker",
"vitest.explorer",
"vscode-icons-team.vscode-icons",
"waderyan.gitblame",
"wayou.vscode-todo-highlight"
]
}
}
// Uncomment to connect as an existing user other than the container default. More info: https://aka.ms/dev-containers-non-root.
// "remoteUser": "devcontainer"
}