mirror of
https://github.com/kjanat/livegraphs-django.git
synced 2026-01-16 06:22:09 +01:00
146 lines
6.2 KiB
JSON
146 lines
6.2 KiB
JSON
// For format details, see https://aka.ms/devcontainer.json. For config options, see the
|
|
// README at: https://github.com/devcontainers/templates/tree/main/src/ubuntu
|
|
{
|
|
"name": "Ubuntu",
|
|
// Or use a Dockerfile or Docker Compose file. More info: https://containers.dev/guide/dockerfile
|
|
"image": "mcr.microsoft.com/devcontainers/base:jammy",
|
|
// Features to add to the dev container. More info: https://containers.dev/features.
|
|
"features": {
|
|
"ghcr.io/devcontainers-community/npm-features/prettier:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/gitmux:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/pre-commit:2": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/ruff:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/shfmt:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers-extra/features/tmux-apt-get:1": {},
|
|
"ghcr.io/devcontainers/features/common-utils:2": {},
|
|
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
|
|
"ghcr.io/devcontainers/features/git:1": {},
|
|
"ghcr.io/devcontainers/features/github-cli:1": {
|
|
"installDirectlyFromGitHubRelease": true,
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers/features/go:1": {},
|
|
"ghcr.io/devcontainers/features/node:1": {
|
|
"installYarnUsingApt": true,
|
|
"nodeGypDependencies": true,
|
|
"nvmVersion": "latest",
|
|
"pnpmVersion": "latest",
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers/features/powershell:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers/features/python:1": {
|
|
"enableShared": true,
|
|
"installJupyterlab": true,
|
|
"installTools": true,
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/devcontainers/features/sshd:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/hspaans/devcontainer-features/django-upgrade:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/itsmechlark/features/redis-server:1": {
|
|
"version": "latest"
|
|
},
|
|
"ghcr.io/jsburckhardt/devcontainer-features/uv:1": {},
|
|
"ghcr.io/warrenbuckley/codespace-features/sqlite:1": {}
|
|
},
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
"charliermarsh.ruff",
|
|
"esbenp.prettier-vscode",
|
|
"GitHub.copilot-chat",
|
|
"GitHub.copilot-workspace",
|
|
"ms-vscode.copilot-mermaid-diagram",
|
|
"ms-vscode.vscode-copilot-data-analysis",
|
|
"ms-vscode.vscode-copilot-vision",
|
|
"ms-vscode.vscode-websearchforcopilot",
|
|
"PyCQA.bandit-pycqa",
|
|
"tamasfe.even-better-toml",
|
|
"timonwong.shellcheck",
|
|
"trunk.io"
|
|
],
|
|
"settings": {
|
|
"[css]": {
|
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
"editor.formatOnSave": true
|
|
},
|
|
"[html]": {
|
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
"editor.formatOnSave": true
|
|
},
|
|
"[javascript]": {
|
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
"editor.formatOnSave": true
|
|
},
|
|
"[python]": {
|
|
"editor.codeActionsOnSave": {
|
|
"source.fixAll": "explicit",
|
|
"source.organizeImports": "explicit"
|
|
},
|
|
"editor.defaultFormatter": "charliermarsh.ruff",
|
|
"editor.formatOnSave": true
|
|
},
|
|
"[toml]": {
|
|
"editor.defaultFormatter": "tamasfe.even-better-toml"
|
|
},
|
|
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
"editor.formatOnSave": true,
|
|
"emmet.includeLanguages": {
|
|
"django-html": "html",
|
|
"jinja-html": "html"
|
|
},
|
|
"emmet.syntaxProfiles": {
|
|
"html": {
|
|
"inline_break": 2
|
|
}
|
|
},
|
|
"files.associations": {
|
|
"*.html": "html"
|
|
},
|
|
"html.format.wrapAttributes": "auto",
|
|
"html.format.wrapLineLength": 100,
|
|
"notebook.codeActionsOnSave": {
|
|
"notebook.source.fixAll": "explicit",
|
|
"notebook.source.organizeImports": "explicit"
|
|
},
|
|
"notebook.formatOnSave.enabled": true,
|
|
"prettier.requireConfig": true,
|
|
"python.defaultInterpreterPath": "${workspaceFolder}/.venv/bin/python",
|
|
"json.schemas": [
|
|
{
|
|
"fileMatch": ["*/devcontainer-feature.json"],
|
|
"url": "https://raw.githubusercontent.com/devcontainers/spec/main/schemas/devContainerFeature.schema.json"
|
|
},
|
|
{
|
|
"fileMatch": ["*/devcontainer.json"],
|
|
"url": "https://raw.githubusercontent.com/devcontainers/spec/main/schemas/devContainer.schema.json"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
// Use 'forwardPorts' to make a list of ports inside the container available locally.
|
|
"forwardPorts": [6379, 8001],
|
|
// Use 'postCreateCommand' to run commands after the container is created.
|
|
"postCreateCommand": "sudo apt update && sudo apt full-upgrade -y && sudo apt autoremove -y; sudo apt install -y ruby-foreman; npm i -g prettier prettier-plugin-jinja-template; redis-server --daemonize yes; uname -a; export UV_LINK_MODE=copy; uv python install; uv pip install -Ur pyproject.toml"
|
|
// Configure tool-specific properties.
|
|
// "customizations": {},
|
|
// Uncomment to connect as root instead. More info: https://aka.ms/dev-containers-non-root.
|
|
// "remoteUser": "root"
|
|
}
|